我正在尝试用当前目录中所有文件中的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: `\'
谢谢..
答案 0 :(得分:2)
试试这个:
sed -i.bak "s/'Control_Reports_Pg.C_Table_Title_Date'/timeofday()::varchar(250)/g" *
永远不会伤害制作备份文件;}