CSVファイルを読み込んで、特定の列だけCSVファイルに出力するPowerShellのサンプルコード

PowerShell
記事内に広告が含まれています。

この記事では、CSV ファイルを読み込み、不要な列を除き 特定の列だけを別の CSV ファイルに出力する PowerShell のサンプルコードを紹介します。

《広告》

実行イメージ

まずはCSVファイルを読み込みます。

CSV ファイルには 「ID」「名前」「年齢」「プログラミング経験」 の 4 列があるとします。

このうち 「ID」 と 「名前」 の列だけを抽出して、別の CSV ファイルとして出力します。

不要な列(年齢、プログラミング経験)は除去します。

以下のようなファイル構成を想定しています。

  • 入力ファイル(CSVファイル)
  • 出力ファイル(列絞り込みした結果のCSVファイル) ※最初はファイルがなくてもよいです。作成されます。
  • powershellの実行ファイル

ソースコード

以下のコマンド、ps1ファイル、入力ファイル(サンプル)を準備しておきます。

コマンド

powershell -ExecutionPolicy RemoteSigned -File "selectCsvFile.ps1"

サンプルコード:whereCsvFile.ps1

# CSVファイル入力
$getContent = Import-Csv .\01.input.csv -Encoding UTF8

# 列絞り込み
$getSelect = $getContent |Select-Object -Property "ID","名前"

# CSVファイル出力
$getSelect | 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」を開きます。

出力ファイルのCSVは「ID」と「名前」の列の実が出力されています。

参考情報

環境

下記の環境で作成・実行しております。

No.環境バージョン
1OSWindows11
2PowerShell7.5.4
環境一覧

以上です。

田舎のエンジニア

日本の田舎に住むITエンジニアです。
新卒からしばらくは東京都内で働いていましたが、30歳を過ぎた頃に自分の生き方を見直し、地方へ移住しました。
現在はノーコード、クラウド(Azure)、C# などを中心に、個人的な検証や学習を続けています。
自宅ではできるだけコストをかけず、実際に手を動かしながら試すことを大切にしています。
このブログでは、個人で取り組んだ技術的な試行錯誤や気づきを記録しています。

田舎のエンジニアをフォローする