Powershellでテキストファイルを作成する方法をまとめてみました。
Out-File を利用する方法と Add-Content を利用する方法の2パターンあります。
ただ、Add-Content はファイルの上書きではなく文字通りの追加をするので、新規作成は Out-File、追記は Add-Content を利用するという使い方が良いかと思います。
1.Out-File を利用してテキストファイルを作成
以下のコマンドで作成可能です。
# Out-File でファイルを作成
"Out-Fileで作成されました。" | Out-File -FilePath "C:\hogehoge\test.txt"
実行結果(Out-File を利用してテキストファイルを作成)
作成後には、get-content コマンドを利用して内容を確認できます。
PS C:\> # Out-File でファイルを作成
PS C:\> "Out-Fileで作成されました。" | Out-File -FilePath "C:\hogehoge\test.txt"
PS C:\>
PS C:\> get-content "C:\hogehoge\test.txt"
Out-Fileで作成されました。
PS C:\>
2.Add-Content を利用してテキストファイルを作成
以下のコマンドで作成可能です。
今回は上記Out-Fileで作成したファイルに追記する形で実行します。
# Add-Content でファイルを作成
"Add-Contentで作成されました。" | Add-Content -Path "C:\hogehoge\test.txt"
実行結果(Add-Content を利用してテキストファイルを作成)
作成後には、get-content コマンドを利用して内容を確認できます。
2行作成されており、2行目がAdd-Contentで追加されたことが分かります。
PS C:\> # Add-Content でファイルを作成
PS C:\> "Add-Contentで作成されました。" | Add-Content -Path "C:\hogehoge\test.txt"
PS C:\>
PS C:\> get-content "C:\hogehoge\test.txt"
Out-Fileで作成されました。
Add-Contentで作成されました。
PS C:\>
[参考①] ファイルの文字コードを指定して作成
Out-File コマンドのオプションで文字コードを指定することができます。
# UTF-8 でファイルを作成
"UTF-8 で作成" | Out-File -FilePath "C:\hogehoge\test.txt" -Encoding utf8
[参考②] ファイルに複数行を書き込む
上述の通りAdd-Contentを利用して追記することで複数行書くこともできますが、配列を利用して複数行書き込むことも可能です。
# 配列を利用して複数行を書き込む
@(
"1行目",
"2行目",
"3行目"
) | Out-File -FilePath "C:\hogehoge\test.txt"
実行結果(ファイルに複数行を書き込む)
PS C:\> # 配列を利用して複数行を書き込む
PS C:\> @(
>> "1行目",
>> "2行目",
>> "3行目"
>> ) | Out-File -FilePath "C:\hogehoge\test.txt"
PS C:\>
PS C:\> get-content "C:\hogehoge\test.txt"
1行目
2行目
3行目
PS C:\>