MAC和Linux分别用sed向文件里添加一行

MAC和Linux的内核不同,所以在MAC系统上用sed处理文件时某些命令需要添加额外的参数,例如修改文件内容时,

Linux:

   sed -i 's/old/new/g' my_file.txt

MAC:

   sed -i '' 's/old/new/g' my_file.txt   # MAC上需要提供一个backup文件的参数,用来做备份,如果不想指定备份文件,可以用空字符 '' 做为参数。

 

向文件添加一行,会更复杂些,例如在ini文件中找到[device_name]这一行,然后在下面添加一行新的配置:

Linux:

   sed -i '/^\[device_name\]/a\\abcdef = my_device' config.ini

MAC:

   sed -i '/^\[device_name\]/a\''$'\n\\abcdef = my_device\''$'\n' config.ini

 

上一篇:linux系统中sed命令删除指定行及其后的若干行


下一篇:华为云安装redis