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