Windowsコマンド:テキスト系ファイルの操作

簡単なPowerShellでの操作

投稿日:2025-11-27

目次


PowerShellを使う時の注意点

前回と同様にPowerShellを使用します。
PowerShellはファイルやフォルダを削除したり設定を大きく変更したりすることもできます。
内容が分からないコマンドは、むやみに実行しないようにしましょう。
実行中の処理を止めたいときは、画面で処理が続いている場合に限り、Ctrl + C で中断できることがあります。
ただし、一瞬で終わる削除などは止められないので、「実行する前によく確認する」ことが一番の安全策です。


テキスト系ファイルの作成(New-Itemコマンド)

テキスト系ファイルを作成するには、New-Itemコマンドを使用します。
New-Itemコマンドは、指定した名前で空のファイル(0バイト)を作成するコマンドです。

New-Itemコマンドには相性の良くないファイル形式があります。
Excel / Word / PDF / 画像ファイルなどの形式は、本来ヘッダや決められた構造(ファイルフォーマット)を持っている必要があります。
New-Itemコマンドで作成した 0バイトのファイルにはその構造が一切ないため、これらの拡張子で空ファイルを作成すると、アプリケーションからは「壊れたファイル」とみなされ、正常に開くことができません。

一方、中身がテキストで完結する形式の下記のファイルは、空のファイル(0バイト)でも正常に開けるため、New-Itemコマンドで簡単に作成できます。

New-Itemコマンドで簡単に作れるテキスト系ファイルの例

プレーンテキスト
.txt, .log
データ系
.csv, .tsv
.json, .xml, .yaml, .ini, .conf
スクリプト/設定
.ps1(PowerShell)
.bat, .cmd(バッチ)
.vb, .vbs, .reg など
Web系
.html, .htm
.css
.js

書式は
New-Item "作成したいファイル名.拡張子"
※拡張子は上記の「~テキスト系ファイルの例」に限ります。

複数ファイルを作成する場合は,(カンマ)で区切ります。
New-Item "作成したいファイル名.拡張子", "作成したいファイル名.拡張子"

実践します。
"C:\PowerShell Test"フォルダ でファイルを作成したいので移動します。
cd "C:\PowerShell Test"
とPowerShellに入力してEnterを押下します。
カレントフォルダ移動
移動できました。

テキストファイルを作成します。
New-Item "memo1.txt"
と入力してEnterを押下します。
画像
memo1.txt ファイルが作成されました。

複数ファイルを作成します。
New-Item "memo2.txt", "memo3.txt", "memo4.txt"
と入力してEnterを押下します。
画像
3つのファイルが作成されました。

拡張子でファイルの種類を指定できます。※上記の「~テキスト系ファイルの例」に限ります。
New-Item "memo5.csv"
と入力してEnterを押下します。
memo5作成
memo5.csv ファイルが作成されました。

lsコマンドで作成されているか確認します。
ls
と入力してEnterを押下します。
lsmemo1-5
memo1~5が作成されているのが確認できました。
作成完了です。

New-Itemコマンドは既に存在するファイルを指定するとエラーになり上書きはされません。
"memo1.txt" がある状態で、もう一度 "memo1.txt" を作ろうとします。 すでにファイルがあります。
「指定したファイルがすでに存在します。」というエラーになります。


作成するファイルに文字列を書き込み(-Valueオプション)

作成するファイルに文字列を書き込みたい場合は、New-Itemコマンドに -Value オプションを付けます。

書式は

New-Item "作成したいファイル名.拡張子" -Value "書き込みたい文字列"

実践します。
"write.txt"ファイルを作成して、"Hello World!"と書き込みます。
New-Item "write.txt" -Value "Helo World!"
と入力してEnterを押下します。
画像。
エクスプローラーを確認すると、"Hello World!"と書き込まれたwrite.txtファイルが作成されています。


ファイルに文字列を追加(Add-Contentコマンドやリダイレクト)

作成するファイルに文字列を追加したい場合は、Add-Contentコマンドを使用します。
また、お手軽に追加したい場合はリダイレクト(>>)を使用する方法もあります(ただし間違って上書きしてしまう危険があります)。

Add-Contentコマンドから説明していきます。
New-Itemコマンドの -Value オプションで作成された文字列の末尾には改行が入らないため、最初に追加する文字列は改行されずに続けて追加されます。
逆に、Add-Contentコマンドで追加した文字列には末尾に自動で改行が入るので、続けてAdd-Contentコマンドで追加する場合は行が分かれます。

書式は

Add-Content "ファイル名.拡張子" "追加したい文字列"

実践します。
"write.txt"ファイルに、2回"ハローワールド!"と追加します。
Add-Content "write.txt" "ハローワールド!"
と入力してEnterを押下します。×2

画像。
1回目の"ハローワールド!"が末尾に追加され、2回目の"ハローワールド!"は改行されて追加されます。

次にリダイレクト(>>)で追加する方法を説明します。
>> がファイルに文字列の追加で、> が指定した文字列で上書きになります。
リダイレクト(>>)は、動作はAdd-Contentコマンドと同じですが、間違って上書き(>)してしまう危険があるため注意が必要です。
> で上書きした場合、Ctrl + Z などで元に戻すことはできません。

書式は、追加する場合
"追加したい文字列" >> "ファイル名.拡張子"
上書きする場合
"追加したい文字列" > "ファイル名.拡張子"

文字列の追加から実践します。
">>で文字追加" >> "write.txt"
と入力してEnterを押下します。
画像。
Add-Contentコマンドと同じように改行されて追加されます。
次に上書きします。
">で上書き" > "write.txt"
と入力してEnterを押下します。
画像。
ファイルの中身が上書きされました。
リダイレクト(>>)での追加と(>)での上書きの違いが確認できました。


テキスト系ファイルの内容を確認(Get-Content / catコマンド)

今まで、テキストの中身を確認するためにファイルを開いていましたが、PowerShell上で中身を確認することもできます。
Get-Contentコマンドもしくは、catコマンドを使用します。
catコマンドはLinux由来のコマンドですが、PowerShellで使用すると自動でGet-Contentコマンドに変換されて実行されます。
そのため書式やオプションなどの使い方は同じです。好きな方を使用してください。
一応、catのコマンド名の由来はconcatenate(連結する)の略で、ファイルを標準出力(コンソール)に繋げるところから来ています。

書式は

cat "ファイル名.拡張子"
カレントディレクトリではないファイルを指定する場合は、フルパスで指定します。
cat "フォルダパス/ファイル名.拡張子"
文字化けする場合は、-Encodingオプションに UTF8 や Default や Unicode を指定します。
cat "ファイル名.拡張子" -Encoding UTF8などの文字コード

"write.txt"ファイルの中身の確認を実践します。
cat "write.txt"
と入力してEnterを押下します。
画像。
"write.txt"の内容がPowerShellに表示されました。