1

次の情報を含むテキスト ファイルがあります。

Filesystem Use%
/dev/sda1 44%
/dev/sda7 35%
/dev/sda3 2%
/dev/sda2 5%
/dev/sda5 47%
tmpfs 0%

ここで、このテキスト ファイルを読み取るバッチ ファイルを作成し、行 2、3、4、5 e 6 の番号をいくつかの変数に格納し、これらの番号を私が設定した特定の値と比較したいと考えています。比較すると次のようになります。

variable = 44
if variable > 90 

次に、変数のすべての行が格納されたコンソール メッセージを表示します。

variabletwo =35
if variabletwo > 90 

次に、変数のすべての行が格納されたコンソール メッセージを表示します。

等々...

誰か助けてくれませんか?

4

2 に答える 2

0

awkフィールドをスカラーに変換するときにを無視する%ので、次のようにするだけです。

awk 'NR > 1 && NR < 7 && $2 > 90' input-file

2 番目のフィールドが 90 より大きい各行 (行 2 から 6 に制限) を印刷するには、おそらく行を制限するためのより良い方法が必要です。もしかして

awk '$1 ~ /^\/dev/ && $2 > 90' input-file

さらにテキストを含めたい場合は、次のようにします。

awk '$1 ~ /^\/dev/ && $2 > 90 { print "$1 is over the limit: $2" }
于 2013-11-08T13:13:21.323 に答える