PowerShell ファイル書き出し

PowerShellの実行結果をファイルに書き出す方法

CやPerlなどのようにファイルを開いて、ファイルに書き出す処理をPowerShellで行うには?

やりたい流れは次の内容です。

①出力するファイル名を決める

②出力するファイルを開く

③ファイルに内容を書き出す

④ファイルを閉じる

サンプルプログラム

# ①出力するファイル名を test.txt とする
$textfile = "C:\Users\USER\Desktop\test.txt"

# ②出力するファイルを開く
$file = New-Object System.IO.StreamWriter($textfile, $false, [System.Text.Encoding]::GetEncoding("UTF-8"))

# ③ファイルに内容を書き出す
$file.WriteLine("aaaa")
$file.WriteLine("test")

# ④ファイルを閉じる
$file.Close()

この方法は、PowerShell内で値を取得し、値ごとに集計したものを書き出すなど、何らかの処理をした結果を出力するときに必要と思います。

実行結果に処理の必要がなく、結果をファイルに書き出したいときは、Out-File、Teeのほうが簡単で使い勝手がよいです。

サンプル

Get-Process | Out-File test.txt

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です