在特定字符之后和字符之前添加字符

时间:2018-05-22 17:53:00

标签: bash sed

我有一个bash脚本,我需要在a(和a之前)

之后插入一个'
MYSTRING(FOO_1234_BAR)

需要

MYSTRING('FOO_1234_BAR')

从我读过的内容来看,我应该使用sed,但我的语法有问题。

谢谢。

2 个答案:

答案 0 :(得分:2)

编辑: 如果Input_file与显示的示例相同,则添加一个简单的sed解决方案。

sed "s/(/&'/;s/)/'&/"  Input_file

关注sed可能对您有帮助。

sed "s/\([^(]\)(\([^)]*\))/\1('\2')/"    Input_file

输出如下。

MYSTRING('FOO_1234_BAR')

如果您想将输出保存到Input_file本身,请使用sed -i或者如果您需要备份Input_file并将输出保存到Input_file本身,请在上面的命令中使用sed -i.bak

答案 1 :(得分:0)

另一个sed

sed "s/(\(.*\))/('\1')/" file