linux – 使用shell脚本将两个命令的输出合并到单个表中

前端之家收集整理的这篇文章主要介绍了linux – 使用shell脚本将两个命令的输出合并到单个表中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我想显示以下命令的输出,如下所示:

1)

mount | grep -i "/dev/sd*" | awk '{ print NR "\t" $1 "\t" $3 }'

2)

/usr/sbin/smartctl -a /dev/sdb | grep Device: | awk '{print $2 }'

第一个命令显示3列多行,下一个命令显示一列信息.

我想连接命令和concat的输出,并显示为4列多行.请建议.

最佳答案
这就是粘贴的用途.使用process substitution使shell将命令视为文件

paste <(mount | awk 'tolower($0) ~ /\/dev\/sd*/ {print NR "\t" $1 "\t" $3}') \
      <(/usr/sbin/smartctl -a /dev/sdb | awk '/Device:/ {print $2}')

删除了grep命令,awk很容易做到.

猜你在找的Linux相关文章