PowerShell テキストファイルをソートして出力する
同フォルダのUTF-8のテキストファイル「output.txt」の内容を行単位で文字コード昇順でソートし、「output2.txt」に出力する例
Get-Content -Encoding UTF8 -Path "./output.txt" | Sort-Object | Set-Content -Encoding UTF8 "./output2.txt"
降順だと以下の通り。
Get-Content -Encoding UTF8 -Path "./output.txt" | Sort-Object -Descending | Set-Content -Encoding UTF8 "./output2.txt"
上記ソートのPowerShellコマンドをコマンドプロンプトから実施させる場合、以下のようにbatファイルを作成。(昇順の例)
test.bat
powershell -Command "Get-Content -Encoding UTF8 -Path './output.txt' | Sort-Object | Set-Content -Encoding UTF8 './output2.txt'"
「output.txt」に下記のような内容を格納し実行すると、
c d f 3 1 ぬ 5 @
「output2.txt」は下記のように出力される。
@ 1 3 5 c d f ぬ