0

我的目标是检查我的磁盘上是否还有足够的空间,每次我的脚本(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

4

3 回答 3

2

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

顺便说一句: bash 'returns' (在这种情况下0== success)是退出代码,您的措辞方式似乎是您试图捕获它而不是输出。在这种情况下,您可能需要阅读此内容

于 2016-10-01T17:24:42.683 回答
1

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

BASH_VAR=`df | awk '/\/dev\/sda4/{print $4;}''`
于 2016-10-01T17:19:40.040 回答
0

如果您只想显示可用磁盘空间,则可以使用以下命令

 df -k /dev/sdc4 | tail -1 | awk '{print $4}'
于 2016-10-01T17:26:50.423 回答