bash で ファイルの中身を sort する

Linux
スポンサーリンク

目的

2
1
3

みたいなファイルの中身をソートして、

1
2
3

みたくする。

 

やり方

sort

コマンドを使う。

「sort」は、テキストファイルを“行単位で並べ替える”コマンドです。

参考:@IT

他のコマンドの実行結果を並べ替える場合にも使用できます。

ふむふむ。。

 

空白やカンマ区切りのデータに対し、並べ替えに使用するフィールドを指定することも可能です。

これ知らんかった。すごいなこれ。使えるときありそう。覚えとこφ(..)メモメモ

 

…もとい…

$ cat a.txt
3
1
2

このファイルで試す。

$ sort a.txt
1
2
3

ソート(並べ替え)された。

 

$ cat a.txt
3
1
2
$

でも、ファイルの中身は変わってない。

 

ファイルの中身を変えるには、

$ sort a.txt -o a.txt

ってやる。

$ cat a.txt
1
2
3
$

 

変わった。

 

sort -u hoge -o hoge

# -o, –output=FILE write result to FILE instead of standard output

参考:qiita

コメント