追加書き込みでファイルへ出力

広告

前のページでは標準出力の出力先をファイルに変更する方法を確認しました。この時、書き込み先のファイルが存在していない場合は新規にファイルが作成されるのですが、ファイルが存在していた場合には既存の内容を上書きして書き込みが行われます。場合によっては上書きではなく追加書き込みしたい場合もありますので、ここでは追加書き込みで出力を行う方法を確認します。

追加書き込みでファイルへ出力するには次の書式を使用します。

コマンド >> ファイル名

この場合、コマンドの実行結果を出力先であるファイルへ出力する時に、ファイル名が既に存在する場合は既存の内容をそのままで最後に追加する形で出力が行われます。

例えば次のように記述します。

echo Hello >> memo.txt

memo.txtが存在しなければ新規にファイルを作成した上で「Hello」と書き込みます。既にmemo.txtが存在していた場合はファイルの最後に「Hello」と書き込みます。

サンプル

では実際に試してみます。まずはmemo.txtファイルが無い状態で次のように入力します。

p2-1

新規にmemo.txtファイルが作成され「こんにちは」と書き込まれます。TYPEコマンドを使ってファイルの内容を出力して確認してみます。

p2-2

「こんにちは」と書き込まれていることが確認できました。

続いて次のように実行してみます。

p2-3

再度TYPEコマンドを使ってファイルの内容を出力して確認してみます。

p2-4

このように「>」の代りに「>>」を使うと、出力先ファイルの既存の内容を消さずに追加で出力を行うことができます。

( Written by Tatsuo Ikura )