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