MacTribe(如何优雅的使用Mac)Mac优雅使用指南

sed指令在Linux与Mac下使用的区别

2018-01-18  本文已影响30人  海阔天空domybest

sed常规用法(即在Linux下运行的方式):

sed -i 'xxx' file

对file文件执行文本替换,具体替换规则根据xxx定义。

但是在Mac系统中运行该指令会报错,原因在于Mac系统中sed指令-i后面需要带一个字符串,该字符串的含义是连接原文件名生成一个新的文件,该文件的内容为文本修改之前的内容。比如

sed -i 'back' 's/str=.*/str="dd"/g' file

执行之后会生成一个新的文件:fileback,文本内容为file修改之前的内容。

如果不想生成这个备份文件,可以把字串定义为空字串,比如

sed -i '' 's/str=.*/str="dd"/g' file

但是不能省略。

上一篇 下一篇

猜你喜欢

热点阅读