MAC终端执行sed -i 出现extra characters at the end of command或undefined label

Linux系统评论阅读模式

MAC终端执行sed -i 出现extra characters at the end of command或undefined label

问题1:sed -i替换命令报错

Mac:~ root# sed -i 's/v/G/g' /root/test
sed: 1: "/root/test": undefined label 'est'
或者
sed: extra characters at the end of p command

在Mac命令终端执行以上命令回出现两中报错,这是因为苹果的Darwin属于Unix操作系统和Linux操作系统在命令上有少许差别。Unix强制要求sed -i 替换时候备份源文件,所以可以用下面的方式。

sed -i '.bak' 's/v/G/g' /root/test
会在源文件想同目录生成一个.bak的备份文件
或者
sed -i '' 's/v/G/g' /root/test
添加一个空字符就不会有一个备份文件

文章末尾固定信息

我的微信
这是我的微信扫一扫
weinxin
我的微信
我的微信公众号
我的微信公众号扫一扫
weinxin
我的公众号
 

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定