Chinaunix
标题:
sed添加双斜杠字符需要做特殊处理吗?
[打印本页]
作者:
xwtnt236
时间:
2013-03-15 15:54
标题:
sed添加双斜杠字符需要做特殊处理吗?
本帖最后由 xwtnt236 于 2013-03-15 16:56 编辑
想在文本某一行首行加入字符,对双斜杠字符需要做特殊处理吗? #号没有问题
sed '29 s/^/#&/g' test.txt 这个表达式是ok的
sed '29 s/^///&/g' test.txt 报错 sed: -e expression #1, char 10: unknown option to `s'
求解!
多谢几位的解答!
作者:
Shell_HAT
时间:
2013-03-15 16:00
sed '29 s/^\/\//&/g' test.txt
复制代码
sed '29 s#^//#&#g' test.txt
复制代码
作者:
yestreenstars
时间:
2013-03-15 16:06
本帖最后由 yestreenstars 于 2013-03-15 16:07 编辑
@Shell_HAT
根据他前面的那个命令,我觉得他是想在行首插入双斜杆:
sed '29 s#^#//#'
复制代码
而且
sed '29 s#^//#&#g' test.txt
等于什么都没做~
作者:
xwtnt236
时间:
2013-03-15 16:07
回复
3#
yestreenstars
对没错 我就是想在行首加入双斜杠, #和//处理方式不一样?
作者:
yestreenstars
时间:
2013-03-15 16:10
处理方式是一样的,s///中的"/"不仅可以用"#"代替,还可以用"!"、"@"等符号代替,效果都是一样的,而且可以避免转义,看起来比较舒服~
作者:
seesea2517
时间:
2013-03-15 16:47
lz 都用到这么高级的方法了,居然没听过“转义”这个名词嘛?
作者:
xwtnt236
时间:
2013-03-15 16:52
回复
5#
yestreenstars
嗯,明白。多谢!
作者:
Shell_HAT
时间:
2013-03-15 17:06
sed '29 s/^/\/\//g' test.txt
复制代码
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2