以下のようなファイルがあったとして、それを行ごとでソートするにはどうすればよいのだろう?とふと思ったので、調べてみた。
●cat /tmp/test2.txt
3 154 2 7 331 4 325 1 14 23 79 2 94 153
結論としては、whileで行ごとに一度sortコマンドでソートが行えるようにしてソートさせればよい。
cat 対象ファイル | while read line; do echo $line | sed 's/ /\n/g' | sort -n | awk '{line=line " " $0} END {print line}' ; done
blacknon@BS-PUB-UBUNTU-01:~$ cat /tmp/test2.txt 3 154 2 7 331 4 325 1 14 23 79 2 94 153 blacknon@BS-PUB-UBUNTU-01:~$ cat /tmp/test2.txt | while read line; do echo $line | sed 's/ /\n/g' | sort -n | awk '{line=line " " $0} END {print line}' ; done 2 3 4 7 154 325 331 1 2 14 23 79 94 153
