我需要将 shell 脚本的输出打印到单独的列中

我需要将 shell 脚本的输出打印到单独的列中

我正在粘贴 shell 脚本的输出

for i in `cat disk.txt`; do
    echo Server:$i
    ssh -q -i ~/production_private_key.pem $i "df -h --output=source,size,used,avail,pcent| grep -v tmp"
done

以下。

在此输入图像描述

我需要将上面的输出打印到不同的列,如下所示。

Server IP |  File System | Total Size | Used Space | Available Space | Percentage

有人可以帮忙吗?

答案1

使用以下命令添加每行的 IP xargs

echo 'Server IP |  File System | Total Size | Used Space | Available Space | Percentage'
for i in ...; do
    ssh -q -i ~/production_private_key.pem $i "df -h --output=source,size,used,avail,pcent \
    | tail -n+2 \
    | grep -v tmp" \
    | xargs -I{} printf '%s %s\n' "$i" {}
done

替换空白|应该很容易

相关内容