You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求协助拼接两条Shell命令的输出,生成指定格式结果

拼接Shell命令输出生成指定格式字符串

可以通过以下方式将两条命令的输出拼接成firstnamelastname.Serialnumber.local格式的内容:

分步命令写法

# 获取拼接后的姓名(名+姓,无空格)
NAME=$(finger | awk 'NR>1{print $2$3}' | uniq)
# 获取设备序列号
SERIAL=$(system_profiler SPHardwareDataType | awk '/Serial/{print $NF}')
# 输出最终格式内容
echo "${NAME}.${SERIAL}.local"

单行命令写法

echo "$(finger | awk 'NR>1{print $2$3}' | uniq).$(system_profiler SPHardwareDataType | awk '/Serial/{print $NF}').local"

命令说明

  • 姓名处理:finger输出用户列表后,用awk 'NR>1{print $2$3}'跳过第一行的表头行,直接拼接第二列(名)和第三列(姓),再通过uniq去除重复的用户条目。
  • 序列号处理:system_profiler SPHardwareDataType输出硬件信息,用awk '/Serial/{print $NF}'匹配包含"Serial"的行,提取该行最后一列的序列号内容。
  • 拼接输出:通过命令替换$()分别获取两部分内容,再与.local后缀拼接后输出。

内容的提问来源于stack exchange,提问作者user8399204

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 02:30:52