awkには、NRとNFという組込変数があります。NRはいくつめのレコードを処理しているのか、NFは処理中のレコードにいくつのフィールドがあるのかを保持しています。これを使うと処理の幅が大幅に広がります。
hoge.txt
1 5 7 2 6 8
全ての行の欄を逆順で印字する方法
% cat hoge.txt | awk '{for(i=NF; i>0; i--) printf("%s ",$i); printf("\n"); }'
実行結果
7 5 1 8 6 2
awkには、NRとNFという組込変数があります。NRはいくつめのレコードを処理しているのか、NFは処理中のレコードにいくつのフィールドがあるのかを保持しています。これを使うと処理の幅が大幅に広がります。
hoge.txt
1 5 7 2 6 8
全ての行の欄を逆順で印字する方法
% cat hoge.txt | awk '{for(i=NF; i>0; i--) printf("%s ",$i); printf("\n"); }'
実行結果
7 5 1 8 6 2