我想仅在第一次出现时替换特殊字符(=)。
示例:
abc=abc.def=
预期输出为:
abc.def=
我尝试了以下命令:sed -e 's/\([^=]*\)\(=.*\)/\2/'
但我得到的输出是:
=abc.def=
答案 0 :(得分:2)
请注意,您的示例建议您删除所有内容,包括第一个等号。
将等号移动到正则表达式的第一部分,删除正则表达式的剩余部分(因为您只需要匹配要删除的部分)并将匹配替换为“nothing”以将其删除:
sed -e 's/^[^=]*=//'