Bash - 需要使 df 输出在登录时对用户友好

Bash - 需要使 df 输出在登录时对用户友好

我试图在用户登录时向他们显示磁盘可用空间。基本上是 df -h 的输出。我将其添加到 .bash 中:

  echo -ne '\e[0;34m'"Disk: \e[m"$(df -h)"\n"

它工作正常并且在 shell 登录时自动显示此内容,但问题是输出很拥挤。不保留列格式。它看起来像这样:

文件系统1024块使用的可用容量安装在 /dev /sda6 468789752 4907272 440046272 2% /无4 0 4 0% /sys /sys /fs /fs /cgroup UDEV 3785472 4 3785468 1% /run /run /run /run /none none none none none none none none none none none unt用户 /dev/sda1 184307 66572 104116 40% /boot

我希望它以与用户正在运行时相同的格式显示df -h。关于如何修改我的命令以获得用户友好的输出有什么建议吗?我也尝试过使用,df -P | column -t但它仍然很狭窄。

使用Ubuntu服务器。

答案1

报价全乱了。这应该有效

 echo -ne '\e[0;34m' Disk: '\e[m' "$(df -h)" "\n"

基本上如果你这样做

managemac3$ df=`df -h`
managemac3$ echo $df
Filesystem Size Used Avail Capacity iused ifree %iused Mounted on /dev/disk0s2 233Gi 54Gi 179Gi 24% 14151768 46917672 23% / devfs 207Ki 207Ki 0Bi 100% 716 0 100% /dev map -hosts 0Bi 0Bi 0Bi 100% 0 0 100% /net map auto_home 0Bi 0Bi 0Bi 100% 0 0 100% /home
managemac3$ echo "$df"
Filesystem      Size   Used  Avail Capacity  iused    ifree %iused  Mounted on
/dev/disk0s2   233Gi   54Gi  179Gi    24% 14151768 46917672   23%   /
devfs          207Ki  207Ki    0Bi   100%      716        0  100%   /dev
map -hosts       0Bi    0Bi    0Bi   100%        0        0  100%   /net
map auto_home    0Bi    0Bi    0Bi   100%        0        0  100%   /home
managemac3$

变量周围的引号可以检查格式

相关内容