linux - df --mac 的总命令?

标签 linux macos command diskspace

我想使用命令行来检索计算机上的总磁盘空间作为一个值。在大多数 Linux 机器上,“df --total”在常规 df 输出的末尾返回这样的值。

在 osx9、10、11 和 12 上,似乎没有这样的选项。

[u'df: illegal option -- -\n', u'usage: df [-b | -H | -h | -k | -m | -g | -P] [-ailn] [-T type] [-t] [filesystem ...]\n']

旧版 Linux 操作系统、redhat5、centos5 等也存在同样的问题

还有另一种方法可以解决这个问题吗?是否还有另一个命令可以隔离某些值?我主要是寻找“total%used”值。

最佳答案

您必须自己计算该值,例如使用awk:

df | awk '
    BEGIN { SIZE=0; USED=0; AVAILABLE=0 }
    // { print }
    $3~/[0-9]/ { SIZE += $2; USED += $3; AVAILABLE += $4 }
    END { printf "total\t%lu\t%lu\t%lu\t%d%%\n", SIZE, USED, AVAILABLE, (USED * 100 / SIZE); }'

分解它

  • awk 第 1 行在开头设置变量,
  • 第 2 行打印每一行(我将其明确表示),
  • 第 3 行表示,如果我在第三列中找到一个数字,请将其添加到总计中
  • 第 4 行在末尾表示打印“总计”行(有点类似于 --total 行)

关于linux - df --mac 的总命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42118076/

相关文章:

linux - .command 文件抛出 "unknown path"错误

sorting - 对数字子字段的 GNU `sort(1)` 感到困惑

xamarin - 如何防止在 Xamarin 表单中快速单击按钮时多次触发事件

在脚本开始时输入的 linux bash 脚本

arrays - Swift - PDF 页面数组到 NSData

macos - 显示 NSSavePanel 时超时

macos - Perl 网络分析问题

linux - Linux中如何挂载目录

c - mq_open() - EACCES,权限被拒绝

linux - 有没有办法在保留分支名称的同时通过提交哈希使用 "git log --oneline"过滤?