#navi(../)


* ファイルまたは標準入力の並び替え・sortコマンド [#gf5c53c6]
sortコマンドにより行単位で標準入力またはテキストファイルの並び替えをすることができます。~
以下にsortコマンドの使用例を記します。

#contents
#htmlinsertpcsp(win-top.html,win-sp.html)

* 標準入力から受け取った情報のソートとファイル名を指定してソート [#z14ec7fb]
以下に標準入力を使用した例とテキストファイルを指定した例を記します。

使用したpref.txtファイルの内容は以下の通りです。
 C:\Users\sakura\Desktop>type pref.txt
 Hokkaido
 Aomori
 Iwate
 Miyagi
 Akita
 Yamagata
 Hukusima
 Ibaraki
 Tochigi
 Saitama
 Chiba
 Tokyo

** 標準入力の内容をソート [#ua332331]
標準入力の内容をソートするには以下のようにします。
 コマンド | sort
最初のコマンドは標準出力されるコマンドになります。~
以下の例は、pref.txtファイルをtypeコマンドで標準出力に出力しパイプ(''|'')によりsortコマンドに渡しています。

標準入力からの受け取った情報のソートは以下のようになります。
 C:\Users\sakura\Desktop>type pref.txt | sort
 Akita
 Aomori
 Chiba
 Hokkaido
 Hukusima
 Ibaraki
 Iwate
 Miyagi
 Saitama
 Tochigi
 Tokyo
 Yamagata

** ファイル名を指定してソート [#d17b8e2a]
標準入力の内容をソートするには以下のようにします。
 sort ファイル名

ファイル名を指定したソートは以下のようになります。
 C:\Users\sakura\Desktop>sort pref.txt
 Akita
 Aomori
 Chiba
 Hokkaido
 Hukusima
 Ibaraki
 Iwate
 Miyagi
 Saitama
 Tochigi
 Tokyo
 Yamagata

* 逆順で並び替え [#qb03f946]
逆順で並び替える場合は、/Rオプションを利用します。~
(Rは大文字小文字のどちらでも同じ動作になります。)

尚、以下の構文で同じ動作となります。
 コマンド | sort /r

 sort /r ファイル名

 sort /reverse ファイル名
''/R''を''/REVERSE''と記述することも可能です。

以下に/Rオプションを指定して実行した例を記します。
 C:\Users\sakura\Desktop>type pref.txt | sort /r
 Yamagata
 Tokyo
 Tochigi
 Saitama
 Miyagi
 Iwate
 Ibaraki
 Hukusima
 Hokkaido
 Chiba
 Aomori
 Akita

* 何文字目以降でソートする方法 [#e84c9b91]
オプション''+数字''で指定した文字以降でソートすることが可能です。~
今回も上記のpref.txtを利用してソートしてみます。

以下の例は2文字目以降を対象にソートした例です。
S''aitama'', Y''amagata'', I''baraki''などが上位になっているのが確認できます。
 C:\Users\sakura\Desktop>sort /+2 pref.txt
 Saitama
 Yamagata
 Ibaraki
 Chiba
 Miyagi
 Akita
 Tochigi
 Hokkaido
 Tokyo
 Aomori
 Hukusima
 Iwate

使用場面としては、固定長のテキストファイルなどで特定カラムからソートしたい場合などで有効に利用できると思います。

* 出力先を指定する''/O''オプション [#na371b8d]
リダイレクト(''>'')でも同様のことが実現できますが、''/O''オプションにより出力ファイル名を指定できます。~
以下、/Oオプションを使用した例です。~
/Oオプションの後ろに出力ファイル名を指定します。

 C:\Users\sakura\Desktop>sort pref.txt /o pref_sort.txt
 
 C:\Users\sakura\Desktop>type pref_sort.txt
 Akita
 Aomori
 Chiba
 Hokkaido
 Hukusima
 Ibaraki
 Iwate
 Miyagi
 Saitama
 Tochigi
 Tokyo
 Yamagata

#htmlinsertpcsp(win-btm.html,win-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS