0

我正在尝试通过控制台查找可用磁盘空间

我发现df -h | awk '$NF == "/" { print $4 }'得到所需的输出。

[root@tmpe2etstmsdc01 ~]# df -h
Filesystem                                                 Size  Used Avail Use% Mounted on
/dev/mapper/vg_root-lv_root                                542G   22G  492G   5% /
tmpfs                                                      127G     0  127G   0% /dev/shm

可用

[root@tmpe2etstmsdc01 ~]# df -h | awk '$NF == "/" { print $4 }'
492G

当很长时,这会产生Use%价值Filesystem

[root@ldrnr-tlsmsdc16 ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_root-lv_root
                   16G   16G     0 100% /
tmpfs             1.9G     0  1.9G   0% /dev/shm

在这里,命令给出Use%而不是Avail

[root@ldrnr-tlsmsdc16 ~]# df -h | awk '$NF == "/" { print $4 }'
100%

我怎样才能进入Avail这种状态?

4

1 回答 1

0

df -h | awk '$NF == "/" { if($1 ~ /^[0-9]/) print $3; else print $4 }'

或者

df -h | awk '$NF == "/" { if($5 == "/") print $3; else print $4 }'

于 2015-11-18T11:13:47.333 回答