CSVファイルを読み込んで、条件で絞り込んでCSVファイルに出力するPowerShellのサンプルコードを紹介します。
実行イメージ
まずはCSVファイルを読み込みます。
列名が「ID」、「名前」、「年齢」、「プログラミング経験」の4列定義されています。

ここでは例として以下の条件で絞り込んでみます。
年齢 >= 14 AND プログラミング経験 <= 6

フォルダ構成は以下のような感じです。
- 入力ファイル(CSVファイル)
- 出力ファイル(抽出結果のCSVファイル) ※最初はファイルがなくてもよいです。作成されます。
- powershellの実行ファイル
ソースコード
以下のコマンド、ps1ファイル、入力ファイル(サンプル)を準備しておきます。
コマンド
powershell -ExecutionPolicy RemoteSigned -File "whereCsvFile.ps1"
サンプルコード:whereCsvFile.ps1
# CSVファイル入力
$getContent = Import-Csv .\01.input.csv -Encoding UTF8
# 年齢 => 14 AND プログラミング経験 <=6
$getWhere = $getContent |Where-Object {$_."年齢" -ge "14" -and $_."プログラミング経験" -le "6"}
# CSVファイル出力
$getWhere | Export-CSV .\02.output.csv -Delimiter "," -Encoding utf8 -NoTypeInformation
入力ファイル:01.input.csv
ID,名前,年齢,プログラミング経験
2222,山田次郎,12,1
1111,山田太郎,11,2
3333,山田三郎太,13,3
4444,山田四郎,14,4
6666,山田六郎,16,5
7777,山田七郎,16,6
5555,山田五郎,15,7
テスト実行
実行手順
PowerShellのターミナルからwhereCsvFile.ps1を実行するコマンドを打ちます。

実行結果
実行すると、出力ファイル「02.output.csv」が作成されます。※既にある場合は上書きされます。

そして出力ファイル「02.output.csv」を開きます。
「年齢」、「プログラミング経験」の条件により絞り込みができていることが確認できました。

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