我想用包含“something something”的另一行替换文件中的一行。我尝试通过 sed 和反斜杠来实现这一点,但没有成功。我尝试了“s/original/'something something'”,我在每个 (') 前插入了一个反斜杠,但没有成功。
有什么想法吗? 如果使用 sed 无法实现这一点,我很乐意尝试其他工具。
答案1
如果或都不original
包含something something
其他特殊字符,则可以使用外部双引号:
$ echo 'original' | sed "s/original/'something something'/"
'something something'
否则,您可以关闭外部单引号,插入文字(转义)引号,然后再次打开外部引号:
$ echo 'original' | sed 's/original/'\''something something'\''/'
'something something'