我有包含内容的yaml文件:
dummy:
key1: value1
key2: value2
我想用sed将dummy
替换为'dummy'
我正在尝试:
sed -i '.yaml' 's/dummy/"'dummy'"/g' ~/Desktop/test.yaml
我知道
"dummy":
key1: value1
key2: value2
正如您所看到的,我得到一个用双引号括起来的虚拟字符串...
事实上,我要 单引号 包围假人
我如何获得? :
'dummy':
key1: value1
key2: value2
答案 0 :(得分:1)
编辑: 现在也按照OP添加解决方案。
sed "s#dummy#12345#" Input_file
遵循简单的sed
可能会对您有所帮助。
sed "s#dummy#'&'#" Input_file
如果要通过备份Input_file将更改保存到Input_file本身,请使用以下命令。
sed -i.bak "s#dummy#'&'#" Input_file
在awk
中:
awk '{sub("dummy","\047&\047")} 1' Input_file