awk は行番号とともにファイルを印刷します。

awk は行番号とともにファイルを印刷します。

リスト値の1列を含むファイルを印刷したいです。たとえば、次のようになります。

cat
dog
house

しかし、次のようにファイルを別のファイルに印刷したいと思います。

1 cat
2 dog
3 house

awkを使ってこれを行うことができると思いましたか?

これを行うコマンドを提供できますか?ファイルを印刷するには、次のことが必要です。

awk -F '{ print $1 }'

しかし、私は次のようにします:

int i
awk -F '{ print i, " " $1 }'
i++

(職場で私のawk本を忘れてしまった)

答え1

NRこれは(レコード数)で行うことができます。

awk '{ print NR, $1 }'

例:

$ echo -e "test test\ntest test" | awk -F'\n' '{print NR, $1}'
1 test test
2 test test

答え2

次のように行と列の制限を使用できます。

次のようにCPUの平均アイドル率を表示したいと思います。

iostat

したがって、次のコマンドを使用できます。

 iostat | awk 'NR==4{print $6}'

結果: iostat | awk 'NR==4{印刷 $6}'

関連情報