テキストファイルの作成
PS H:\workspace> New-Item -Path dummy1.txt
Directory: H:\workspace
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2023/10/26 11:31 0 dummy1.txt
ファイルサイズ0の空のテキストファイルを作成されます。
New-Item
ではファイルオブジェクトが返るようですのでパイプライン繋いで作成したファイルを加工することが出来そうです。戻り値が不要であれば、同じくパイプラインでOut-Null
へつなげて戻り値を無視することも出来ます。
テキストファイルを新規作成し文字列をセット
PS H:\workspace> Write-Output "C言語" | Set-Content -Path dummy3.txt -Encoding UTF8
結果を確認
Get-Content dummy3.txt
C言語
既存のテキストファイルに文字列を追記
Write-Output "PowerShell" | Add-Content -Path dummy3.txt -Encoding UTF8
結果を確認
Get-Content dummy3.txt
C言語
PowerShell
テキストファイルの結合
まず、結合するテキストファイルを2つ作成します。
Write-Output "ABC" | Set-Content -Path text1.txt -Encoding UTF8
Write-Output "123" | Set-Content -Path text2.txt -Encoding UTF8
結合します。
Get-Content text1.txt, text2.txt | Set-Content -Path text3.txt -Encoding UTF8
結果を確認
Get-Content text3.txt
ABC
123
結合するファイルを読み込む場合Get-Content
の引数は,
カンマで区切ります。
複数のテキストファイルの結合
Get-Content text*.txt | Set-Content -Path result.txt -Encoding UTF8
ワイルドカードで条件にあう複数のファイルを結合します。
結果を確認
Get-Content result.txt
ABC
123
ABC
123
前項で作成したtext3.txtも結合されたため、内容が繰り返されています。
Get-Contentのエイリアス
Get-Alias -Definition "Get-Content"
CommandType Name Version Source
----------- ---- ------- ------
Alias cat -> Get-Content
Alias gc -> Get-Content
Alias type -> Get-Content
個人的になじみがあるのはcat
Write-Outputのエイリアス
Get-Alias -Definition "Write-Output"
CommandType Name Version Source
----------- ---- ------- ------
Alias echo -> Write-Output
Alias write -> Write-Output
個人的になじみがあるのはecho
未確認
Set-Content
やAdd-Content
とリダイレクトの関係
コメント