[登録されているタグ]

[記事公開日]2025/12/18

PowerShellでファイルに保存する|Out-Fileの使い方

📝 はじめに

PowerShellでコマンドを実行していると、
「画面に表示された結果をそのままファイルに保存したい」
「一覧結果やエラーメッセージをログとして残したい」
「実行結果を後から確認できる形で出力したい」
という場面はとても多くあります。

そんなときに使うのが
Out-File です。
PowerShellの出力結果をファイルとして保存するための代表的なコマンドです。

こんな場面で便利

  • コマンド結果をテキストファイルに保存したい
  • 調査結果や一覧をログとして残したい
  • 画面表示用の出力をそのまま保存したい

✅ このコマンドでできること(要点)

  • PowerShellの出力結果をファイルに保存できる
  • 既存ファイルへの上書き・追記ができる
  • 文字コードや改行コードを指定できる
  • 画面表示用の整形結果をそのまま残せる

✅ Out-File でできること

Out-File は、
PowerShellで生成された出力ストリーム
テキストファイルとして保存するコマンドです。

画面に表示される内容とほぼ同じ形式で保存されるため、
「人が読むためのログ」や
「調査結果の記録」に向いています。

一方で、データ再利用よりも
可読性重視の用途に向いている点が特徴です。

🧩 基本構文

コマンド | Out-File ファイルパス

多くの場合、パイプラインと組み合わせて使います。

▶ 基本的な使い方(まずこれだけ)

🔹 コマンド結果をファイルに保存する

Get-Process | Out-File C:\Logs\process.txt

実行結果が
process.txt に保存されます。
この結果が出ていれば、正常に保存できています。

🔹 変数の内容を保存する

$msg = "処理完了: $(Get-Date)"
$msg | Out-File C:\Logs\result.txt

画面に表示される内容と同じ形式で保存されます。

🛠 よく使われる指定例

🔹 既存ファイルに追記する

Get-Service | Out-File C:\Logs\service.txt -Append

既存ファイルの末尾に結果が追加されます。

🔹 文字コードを指定して保存する

Get-ChildItem | Out-File C:\Logs\list.txt -Encoding UTF8

文字化けを防ぎたい場合に重要な指定です。

💼 実務でよく使う使用例(応用)

🔹 調査結果をログとして保存する

Get-EventLog -LogName System -Newest 50 |
Out-File C:\Logs\eventlog.txt

🔹 エラー内容をファイルに保存する

try {
    Get-Item C:\NoSuchPath
}
catch {
    $_ | Out-File C:\Logs\error.txt
}
組み合わせ例

  • Select-Object で項目整理
  • -Append で履歴ログ化
  • 調査・障害対応ログの保存

🧩 よくある勘違い・つまずきポイント

  • データ再利用には向かない
  • 表示形式が環境で変わることがある
  • 既定の文字コードで文字化けする場合がある
  • Set-Content / Add-Content との違いが分かりにくい
  • 巨大な出力を保存するとファイルが大きくなる

🔄 cmdとの違いについて

cmd では リダイレクト(>)を使いますが、
PowerShell の Out-File
出力をPowerShellのストリームとして処理できます。

そのため、オブジェクト処理後の結果を
きれいな形で保存できます。

⚠ エラー・うまく動かないときの確認ポイント

  • 出力先フォルダが存在しているか
  • 書き込み権限があるか
  • 文字コード指定が適切か
  • 意図せず上書きしていないか

🧠 注意点

Out-File
「人が読むログ」には最適ですが、
後処理で再利用する場合は
Export-Csv
ConvertTo-Json などの
専用コマンドを検討するとよいでしょう。

📌 まとめ

  • Out-File は出力結果をファイルに保存するコマンド
  • 画面表示用の結果をそのまま残せる
  • -Append や -Encoding が実務で重要
  • ログ・調査結果の保存に向いている

🔎 PowerShellコマンドを探す

やりたいことからコマンドを探すこともできます。

  • コマンド結果を保存したい
  • ログをファイルに残したい
  • 一覧結果を記録したい
  • エラー内容を保存したい
  • エラーや実行できない原因を調べたい
  • PowerShellでログ管理したい
  • 安全に保存したい
Generic filters

サイト内検索(入力すると候補が出ます)

Generic filters


Generic filters

Generic filters

すべてを開く | すべてを閉じる
ページ上部へ戻る