我的文件包含;"
并且我需要将其替换为';"
以下 sed 命令不起作用:
sed -i "s/;"/';"/g" /root/bashy.sh
我怎样才能做到这一点?解决方案不一定是sed
.
答案1
这是一个 shell 错误,而不是 sed 错误 - 您的引用需要加引号:
sed "s/;\"/';\"/g"
甚至
sed s/';"'/"'"';"'/g
如果你不喜欢反斜杠...
答案2
使用 GNU sed:
sed -i.bak 's/;"/\x27&/g' file
POSIX sed:
sed -e "s/;\"/'&/g" < file > file.out