1. ホーム
  2. linux

[解決済み] bash で現在のパーティションの空きディスク容量をチェックする

2022-05-17 16:40:54

質問

私はbashでインストーラを書いています。ユーザーはターゲット ディレクトリに行き、インストール スクリプトを実行するので、最初のアクションは十分なスペースがあるかどうかをチェックすることです。df がすべてのファイル システムを報告することは知っていますが、ターゲット ディレクトリがあるパーティションの空き領域だけを取得する方法があるかどうか疑問に思っていました。

編集 - 私が思いついた答え

df $PWD | awk '/[0-9]%/{print $(NF-2)}'

df はターミナルに合わせて出力をフォーマットするようなので、長いマウントポイント名では出力が一行下にシフトされるため、少し奇妙です。

どのように解決するのですか?

はい、そうです。

df -k .

をカレントディレクトリにコピーします。

df -k /some/dir

特定のディレクトリをチェックしたい場合。

をチェックしたい場合もあります。 stat(1) コマンドをチェックしてみるのもいいかもしれません。スクリプトの解析を容易にするために、出力フォーマットを指定することができます。以下はちょっとした例です。

$ echo $(($(stat -f --format="%a*%S" .)))