使用| bash脚本中的列-t

时间:2017-08-15 18:37:12

标签: bash scripting

我试图在一个简单的脚本中使用| column -t在df命令的末尾,并且我一直收到错误。

这是我的剧本:

#!/bin/sh
CMD=`df -Pi | column -t`
echo $CMD

这是我运行时发生的输出:

  

文件系统Inode IUsed IFree IUse%挂载在/ dev / mapper / rootvg-root   327680 149683 177997 46%/ tmpfs 3851091 1 3851090 1%/ dev / shm   / dev / sda1 99568 62 99506 1%/ boot / dev / mapper / rootvg-home 131072 1457   129615 2%/ home / dev / mapper / rootvg-tmp 131072 51 131021 1%/ tmp   / dev / mapper / rootvg-local 65536 97 65439 1%/ usr / local   / dev / mapper / rootvg-var 131072 5359 125713 5%/ var   / dev / mapper / rootvg-log 132464 1535 130929 2%/ var / log   / dev / mapper / rootvg-audit 65536 16 65520 1%/ var / log / audit   / dev / mapper / optvg-opt 3276800 216348 3060452 7%/ opt

这是一大块。我假设我在实际命令中遗漏了一些包装字符,但我还没有找到任何东西。

这是我从脚本中寻找的输出:

Filesystem                Inodes   IUsed   IFree    IUse%  Mounted         on
/dev/mapper/rootvg-root   327680   149683  177997   46%    /
tmpfs                     3851091  1       3851090  1%     /dev/shm
/dev/sda1                 99568    62      99506    1%     /boot
/dev/mapper/rootvg-home   131072   1457    129615   2%     /home
/dev/mapper/rootvg-tmp    131072   51      131021   1%     /tmp
/dev/mapper/rootvg-local  65536    97      65439    1%     /usr/local
/dev/mapper/rootvg-var    131072   5359    125713   5%     /var
/dev/mapper/rootvg-log    132464   1535    130929   2%     /var/log
/dev/mapper/rootvg-audit  65536    16      65520    1%     /var/log/audit
/dev/mapper/optvg-opt     3276800  216353  3060447  7%     /opt

2 个答案:

答案 0 :(得分:1)

你需要用双引号包装你的回声。所以它尊重空间,换行等。

echo "$CMD"

答案 1 :(得分:0)

你错过了管道“|”:

CMD=`df -Pi | column -t`
echo "$CMD"

但是,有些东西告诉我这不是你想要的。