CSVファイルを読み込んで指定列でソートして出力するPowerShellのサンプルコードを紹介します。
実行イメージ
テキストファイルをCSVファイルとして読み込みます。

CSVファイルの特定の列をキーにしてソートします。
例えば以下のような並べ順です。
- 年齢 ⇒ 昇順
- プログラミング経験 →降順

フォルダ構成は以下のような感じです。
- 入力ファイル
- 出力ファイル(ソートの実行結果)
- powershellの実行ファイル

ソースコード
以下のコマンド、ps1ファイル、入力ファイル(サンプル)を準備しておきます。
コマンド
powershell -ExecutionPolicy RemoteSigned -File "sortCsvFile.ps1"
サンプルコード:fileSort.ps1
# CSVファイル入力
$getContent = Import-Csv .\01.input.csv -Encoding UTF8
# 年齢(昇順)、プログラミング経験(降順)でソート
$getSorted = $getContent |Sort-Object -Property @{Expression = "年齢"; Descending = $false} ,
@{Expression = "プログラミング経験"; Descending = $true}
# CSVファイル出力
$getSorted | Export-CSV .\02.output.csv -Delimiter "," -Encoding utf8 -NoTypeInformation
入力ファイル:01.input.csv
ID,名前,年齢,プログラミング経験
2222,山田次郎,12,3
1111,山田太郎,11,3
3333,山田三郎太,13,3
4444,山田四郎,14,3
6666,山田六郎,16,3
7777,山田七郎,16,4
5555,山田五郎,15,3
テスト実行
実行手順
PowerShellのターミナルからSortCsvFile.ps1を実行するコマンドを打ちます。

実行結果
実行すると、出力ファイル「02.output.csv」の更新日時が新しくなっています。

そして出力ファイル「02.output.csv」を開きます。
ファイルの中身が「年齢」と「プログラミング経験」でソートされていることが確認できました。

参考情報
環境
下記の環境で作成・実行しております。
| No. | 環境 | バージョン |
|---|---|---|
| 1 | OS | Windows11 |
| 2 | PowerShell | 7.5.4 |
以上です。