我有一台RHEL(Redhat Enterprise Linux)v6.5(圣地亚哥)服务器。在此服务器上,如果我执行df -help,则有可用选项列表。我对--total选项感兴趣
但是,有较旧的RHEL(v5.5)版本。其中没有--total选项。

我的问题是,我有一个像这样的命令:

df -h --total  | grep total | awk 'NR==1{print$2}+NR==1{print$3}+NR==1{print$4}+NR==1{print$5}'

给出的输出为
62G
39G
21G
66%

哪里
62G is Total size of the Disk
39G is Used
21G is remaining
61% Total usage %

上面的命令在RHEL v6.5中运行正常。但是在RHEL v5.5中失败,因为它没有df命令的--total选项。

当我在RHEL v5.5上运行相同的命令时,出现以下错误:
df: unrecognized option `--total'
Try `df --help' for more information.

有没有可以通过以下方式给我输出的命令:
Total Disk Space
Used  Space
Remaining Disk space
Usage %

例如:
62G
39G
21G
66%

最佳答案

您必须自己进行计算工作。

像这样的awk脚本应该可以工作。

$ cat dftotal.awk
BEGIN {
    map[0] = "K"
    map[1] = "M"
    map[2] = "G"
    map[3] = "T"
}
function fmt(val,    c) {
    c=0
    while (val > 1024) {
        c++
        val = val / 1024
    }
    return val map[c]
}

{
    for (i=2;i<5;i++) {
        sum[i]+=$i
    }
}

END {
    print fmt(sum[2]) ORS fmt(sum[3]) ORS fmt(sum[4])
    print ((sum[3] / sum[2]) * 100) "%"
}
$ df -P | awk -f dftotal.awk

关于linux - RHEL 5.5版(Tikanga),df --total选项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27405031/

10-15 05:13