[PowerShell][Out-File] 複数のファイルを一括で出力する方法

概要

「Out-File」は、PowerShellのコマンドレットであり、指定されたデータをファイルに書き込むことができます。この記事では、「Out-File」を使用して複数のファイルを一括で出力する方法について説明します。

構文

Out-File -FilePath <ファイルパス> [-Encoding <エンコード方式>] [-Append]
  [-NoClobber] [-InputObject <入力オブジェクト>]

FilePath:出力先のファイルパスを指定します。
Encoding:出力するファイルのエンコード方式を指定します。省略可能であり、指定しない場合はデフォルトで「Unicode」が設定されます。
Append:既存のファイルに追記する場合に指定します。指定しない場合は、ファイルが上書きされます。
NoClobber:ファイルが既に存在している場合に上書きしないようにします。指定しない場合は、ファイルが上書きされます。
InputObject:書き込むデータを指定します。省略可能であり、指定しない場合はパイプラインからの入力を受け付けます。

使用例

# 複数のファイルを一括で出力する
Get-ChildItem -Path C:\logs\*.log | Out-File -FilePath C:\output\all_logs.txt

# 出力するファイルのエンコード方式を指定する
Get-ChildItem -Path C:\logs\*.log | Out-File -FilePath C:\output\all_logs.txt -Encoding UTF8

# 既存のファイルに追記する
Get-ChildItem -Path C:\logs\*.log | Out-File -FilePath C:\output\all_logs.txt -Append

# ファイルが既に存在する場合に上書きしない
Get-ChildItem -Path C:\logs\*.log | Out-File -FilePath C:\output\all_logs.txt -NoClobber

「Get-ChildItem」コマンドレットを使用して、指定されたディレクトリ内の全てのログファイルを取得し、「Out-File」コマンドレットを使用して、全てのログファイルを一括で出力しています。また、「-Encoding」オプションを使用して、出力するファイルのエンコード方式を指定し、出力するファイルに追記するために「-Append」オプションを使用しています。また、「-NoClobber」オプションを使用して、ファイルが既に存在する場合に上書きしないようにしています。

コメント

タイトルとURLをコピーしました