Linuxでファイルの終わりにテキストを追加する方法


Linuxで構成ファイルを操作しているときに、構成パラメーターなどのテキストを既存のファイルに追加する必要がある場合があります。追加とは、単にファイルの最後または最後にテキストを追加することを意味します。

この短い記事では、Linuxでファイルの末尾にテキストを追加するさまざまな方法を学習します。

>>演算子を使用してテキストを追加

>> 演算子は、出力をファイルにリダイレクトします。ファイルが存在しない場合は作成されますが、存在する場合は、ファイルの最後に出力が追加されます。

たとえば、echoコマンドを使用して、図のようにファイルの最後にテキストを追加できます。

# echo "/mnt/pg_master/wal_archives     10.20.20.5(rw,sync,no_root_squash)" >> /etc/exports

文字で次の行を追加します)。

# printf "/mnt/pg_master/wal_archives     10.20.20.5(rw,sync,no_root_squash)\n" >> /etc/exports

catコマンドを使用して、1つ以上のファイルのテキストを連結し、別のファイルに追加することもできます。

次の例では、/ etc/exports構成ファイルに追加される追加のファイルシステム共有が、shares.txtというテキストファイルに追加されます。

# cat /etc/exports
# cat shares.txt
# cat shares.txt >>  /etc/exports
# cat /etc/exports

さらに、次のヒアドキュメントを使用して、図のようにファイルの最後に構成テキストを追加することもできます。

# cat /etc/exports
# cat >>/etc/exports<s<EOF
> /backups 10.20.20.0/24(rw,sync)
> /mnt/nfs_all 10.20.20.5(rw,sync)
> EOF
# cat /etc/exports

重要:> リダイレクト演算子を>> と間違えないでください。既存のファイルで> を使用すると、そのファイルの内容が削除されてから上書きされます。これにより、データが失われる可能性があります。

teeコマンドを使用してテキストを追加する

teeコマンドは、標準入力からテキストをコピーし、標準出力とファイルに貼り付け/書き込みます。図のように、 -a フラグを使用して、ファイルの末尾にテキストを追加できます。

# echo "/mnt/pg_master/wal_archives     10.20.20.5(rw,sync,no_root_squash)" | tee -a /etc/exports
OR
# cat shares.txt | tee -a /etc/exports

teeコマンドでヒアドキュメントを使用することもできます。

# cat <<EOF | tee -a /etc/exports
>/backups 10.20.20.0/24(rw,sync)
>/mnt/nfs_all 10.20.20.5(rw,sync)
EOF

これらの関連記事もお読みください。

  1. How to Run Commands from Standard Input Using Tee and Xargs in Linux
  2. Learn The Basics of How Linux I/O (Input/Output) Redirection Works
  3. How to Save Command Output to a File in Linux
  4. How to Count Word Occurrences in a Text File

それでおしまい! Linuxでファイルの最後にテキストを追加する方法を学びました。共有する質問や考えがある場合は、以下のフィードバックフォームからご連絡ください。