"df -k"コマンドで "use%"列のみを出力し、すべてのuse%値を出力する方法

"df -k"コマンドで "use%"列のみを出力し、すべてのuse%値を出力する方法

"df -k"コマンドでUse%列とすべての%値を印刷したいと思います。これらすべての値を変数値と比較したいです。

答え1

 df -kP | awk 'NR>1 && $5+0 >= 90'

より大きいか等しい項目がリストされます(df(with)の移植可能な出力形式で、-Pこれはすべての項目が1行にあることを保証します)。数値比較を強制することです(それ以外の場合は以下と見なされます)。use%90+0100%90

答え2

GNU dfの使用 - aixではテストされていません

出力を解析せずにUse%値を取得できますdf

df --output=pcent

答え3

これはあなたが望むものですか?

df -k|sed 's/  */\t/g;s/%//'|cut -f 5

その後、最初の行を削除して値を比較できますが、この時点ではもはやデバイス関係はありません。

[編集:]だから私の言うことは正しいです。このデバイスが必要です。だからあなたは次のようなものが欲しい:

for item in `df -k|sed 's/  */_/g;s/%//'|cut -d_ -f 1,5`; do
  if (( ${item#*_} > 90 )); then
    echo ${item%_*} has ${item#*_}%
  fi
done

これは bash 構文です。あなたのニーズに合わせて調整してください。

関連情報