sed失败但有错误

时间:2017-08-23 16:07:30

标签: linux sed

我正在尝试用当前目录中所有文件中的sed替换下一个字符串:(包括撇号) 'Control_Reports_Pg.C_Table_Title_Date'

用字符串: timeofday()函数:: VARCHAR(250)

我尝试使用以下命令转义特殊字符'():

sed -i '\''Control_Reports_Pg.C_Table_Title_Date\''/timeofday\(\)::varchar\(250\)/g' *

我收到的错误:sed: -e expression #1, char 22: unknown command: _'

我在网上看到我不需要逃避下划线,所以我该怎么办?当我尝试使用\来逃避下划线时,我也会收到错误:

sed -i 'Pg.C\_Table\_Title_Date\''/timeofday\(\)::varchar\(250\)/g' *
sed: -e expression #1, char 24: unknown command: `\'

谢谢..

1 个答案:

答案 0 :(得分:2)

试试这个:

sed -i.bak "s/'Control_Reports_Pg.C_Table_Title_Date'/timeofday()::varchar(250)/g" *

永远不会伤害制作备份文件;}