2008年2月7日木曜日

perl 列の並び替え

perl -i -n -e 'print join (" ", reverse split (" ", $_)), "\n";' filename

-eはおなじみスクリプトを引数に与える。
-nでスクリプトがwhile(<>){}に含まれているように振る舞う。
-iが無ければ標準出力へ。

スクリプトの中身は
split(" ",$_)で入力文字列を" "で区切り配列に。
csvファイルならsplit(",",$_)になる。

reverseで配列の順番を逆順に

joinはsplitの逆の動作

んで最後にprint

0 件のコメント: