如何从bash中的df中提取特定数字?

时间:2016-10-01 17:16:15

标签: linux bash df

我的目标是检查我的磁盘上是否还有足够的空间,每次我的脚本(bash)都进行一步。

运行df; echo $?打印:

Dateisystem     1K-Blöcke    Benutzt Verfügbar Verw% Eingehängt auf
/dev/sdc4      1869858440 1680951776  93900284   95% /mnt/dd
0

0是该命令的结果。 就我而言,我只想在变量或结果中使用93900284

我已阅读man df

3 个答案:

答案 0 :(得分:2)

df --output=avail /path/to/where/you/want/to/write | tail -n 1

顺便说一句:bash'返回' (在这种情况下,0 == success)是退出代码,你说它的方式似乎你试图捕获它而不是输出。在这种情况下,您might want to read this

答案 1 :(得分:1)

您可以使用awk从输出中提取合适的字段:

BASH_VAR=`df | awk '/\/dev\/sda4/{print $4;}''`

答案 2 :(得分:0)

如果您要执行的操作仅显示可用磁盘空间,则可以使用以下命令

 df -k /dev/sdc4 | tail -1 | awk '{print $4}'