如何在Linux中将文本内容追加到文件末尾?,


在Linux中处理配置文件时,有时您需要将诸如配置参数之类的文本附加到现有文件中。追加只是意味着将文本添加到文件的末尾。

在这篇简短的文章中,我会手把手教你在Linux中将文本内容追加到文件末尾的不同方法。

使用>>运算符附加文本

运算符会将输出重定向到文件,如果文件不存在,则创建该文件,但如果存在,则输出就会附加在文件的末尾。

例如,您可以使用echo命令将文本附加到文件的末尾,如图所示。

  1. #echo“ / mnt / pg_master / wal_archives 10.20.20.5(rw,sync,no_root_squash)” >> / etc / exports#echo“ / mnt / pg_master / wal_archives 10.20.20.5(rw,sync,no_root_squash)” >> / etc / exports 

或者,您可以使用printf命令(不要忘记使用\ n字符添加下一行)。

  1. #printf“ / mnt / pg_master / wal_archives 10.20.20.5(rw,sync,no_root_squash)\ n” >> / etc / exports#printf“ / mnt / pg_master / wal_archives 10.20.20.5(rw,sync,no_root_squash)\ n” >> / etc / exports 

您还可以使用cat命令连接一个或多个文件中的文本,并将其附加到另一个文件中。

在以下示例中,要添加到/ etc / exports配置文件中的其他文件系统共享被添加到名为shares.txt的文本文件中。

  1. # cat /etc/exports 
  2. # cat shares.txt 
  3. # cat shares.txt >>  /etc/exports 
  4. # cat /etc/exports# cat /etc/exports# cat shares.txt# cat shares.txt >>  /etc/exports# cat /etc/exports 

此外,您还可以使用以下此处的文档将配置文本附加到文件的末尾,如下所示。

  1. # cat /etc/exports 
  2. # cat >>/etc/exports<s<EOF 
  3. > /backups 10.20.20.0/24(rw,sync) 
  4. > /mnt/nfs_all 10.20.20.5(rw,sync) 
  5. > EOF 
  6. # 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标志将文本附加到文件的末尾,如下所示。

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

您还可以使用带有tee命令的here文档。

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

相关内容