sed:-e表达式#1,字符XX:unterminated`s';命令
我试图使用带有命令sed:-e表达式#1,字符XX:unterminated`s';命令,sed,Sed,我试图使用带有命令sed的正则表达式将整个文件中的任何8个连续数字替换为特定的8个数字。我不确定这是否是正确的方法,但我一直收到一个错误,说命令未终止。知道为什么吗 sed-i's/d\{8\}/20170526./somefolder/somefile.xml 错误为char17,对应于20170526之前的/sed switch语句需要3个分隔符(本例中为斜杠) sed -eE 's/[0-9]{8}/20170526/' ./somefolder/somefile.xml 试试sed-i
sed
的正则表达式将整个文件中的任何8个连续数字替换为特定的8个数字。我不确定这是否是正确的方法,但我一直收到一个错误,说命令未终止。知道为什么吗
sed-i's/d\{8\}/20170526./somefolder/somefile.xml
错误为char17,对应于20170526
之前的/
sed switch语句需要3个分隔符(本例中为斜杠)
sed -eE 's/[0-9]{8}/20170526/' ./somefolder/somefile.xml
试试
sed-i's/d\{8\}/20170526/'./somefolder/somefile.xml
注意后面的/
-sed的s
命令的正确语法是s/replace_this/with_that/
,而不是s/replace_this/with_that
与数字不匹配。也许\d
可以,但最好使用[0-9]
,或者更好的[[:digit:][]
。此外,字符17是命令本身的最后一个字符,不包括sed-i
——这正是命令末尾缺少/
的地方。从man sed
:s/regexp/replacement/
s
代表“替换”,而不是“开关”。“p”代表学究。