GNU/Linux >> Linux の 問題 >  >> Linux

bash でディスク上で利用可能なバイト数のみを取得するにはどうすればよいですか?

awk を使用できます

df | awk '$1=="/dev/sda"{print $4}'

ポータブル:

df -P /dev/sda1 | awk 'NR==2 {print $4}'

-P オプションで df 期待される形式で出力を出力し、特にデバイス名が長くても改行しません。デバイス名を引数として df に渡す /dev/sda10 の情報を取得するなど、解析から危険を取り除きます /dev/sda1 をクエリしているとき . df -P ヘッダー行 (無視します) と目的の列を印刷する 1 つのデータ行の 2 行を印刷するだけです。

df のリスクがあります たとえば、ボリュームが名前でマウントされ、名前にスペースが含まれている場合や、リモート マウント ポイントにスペースが含まれている NFS ボリュームの場合、スペースを含むデバイス名が表示されます。この場合、df の出力を解析する完全に移植可能な方法はありません。 . df に自信がある場合 渡した正確なデバイス名が表示されます (常にそうであるとは限りません)。それを取り除くことができます:

df -P -- "$device" | awk -vn=${#device} 'NR==2 {$0 = substr($0, n+1); print $3}'

awk を使用できます

df | grep sda | awk '{print $4}'

Linux
  1. 利用可能な`shopt`オプションの説明を取得する方法は?

  2. Linux で利用可能なワイヤレス ネットワークのリストを取得するにはどうすればよいですか?

  3. Bashの配列から一意の値を取得するにはどうすればよいですか?

  1. bashでループの終了ステータスを取得する方法

  2. bashで文字列から最後の数字を取得するにはどうすればよいですか?

  3. Linux で物理ディスクの数を取得するには?

  1. ターミナルで利用可能な垂直線の数を見つける方法は?

  2. Bashが実行されているTtyを取得する方法は?

  3. Xによって割り当てられたディスプレイ番号を取得する方法