sed替换特殊字符串配额
sed仍然让我头疼,所以非常感谢您的帮助 在文件中,我有一个字符串,如:sed替换特殊字符串配额,sed,Sed,sed仍然让我头疼,所以非常感谢您的帮助 在文件中,我有一个字符串,如: SOME_TEXT="variables" 我想要完成的是在字符串的末尾或求值处添加一段文本(变量) 我尝试使用以下的变体: sed -i '/^SOME_TEXT="/ s/$/ SOME_TEXT="new text'/' filename 但这是失败的,所以很明显,我想添加到字符串的配额弄乱了语法 乐: 另一个变体是,我有一个变量,我想在该语法中用作替换,所以我有: sed -i "s/^SOME_TEXT="
SOME_TEXT="variables"
我想要完成的是在字符串的末尾或求值处添加一段文本(变量)
我尝试使用以下的变体:
sed -i '/^SOME_TEXT="/ s/$/ SOME_TEXT="new text'/' filename
但这是失败的,所以很明显,我想添加到字符串的配额弄乱了语法
乐: 另一个变体是,我有一个变量,我想在该语法中用作替换,所以我有:
sed -i "s/^SOME_TEXT="/SOME_TEXT=" $variable/" file
这实际上产生了这个输出,因为它错误地获取了期初/期末配额:
SOME_TEXT = text_variable" initial text continuation
那么,我如何才能正确地关闭尾随配额,以便在它之后使用变量呢
sed 's/^SOME_TEXT="/SOME_TEXT="new text/' filename
结果表明:
SOME_TEXT="new textvariables"
这就是您想要的吗?用'\'
对'''
字符进行转义,这样它们就不会终止您的正则表达式字符串
sed -i "s/^TEXT=\"/TEXT=\" $variable/"
你需要使用双引号来扩展变量Hanks Martin,这就做到了。我编辑了我的帖子,因为我想使用一个变量作为替换文本,而且因为我必须使用双配额,这些都是sed语法和我的文本中也有一个的事实之间的混乱。