标题: [问题求助] [已解决]sed命令怎样输入带“/”文本? [打印本页]
作者: syqh2010 时间: 2014-10-12 18:31 标题: [已解决]sed命令怎样输入带“/”文本?
本帖最后由 syqh2010 于 2015-3-4 00:24 编辑
比如我想在“ --SONW3”的下一行写入“ R1/R2 07.00 06.00”
要求效果如下
--SONW3
R1/R2 07.00 06.00
用高手给的代码
sed -r -e "s/^ --SONW3.*/&\n R1/R2 07.00 06.00/" a.txt>b.txt
输出的内容为空白,查了下好像是说不能用“/”?
请问各位有何办法实现?直线若走不了,绕着走也行。
作者: Batcher 时间: 2014-10-12 18:40
sed -r -e "s/^ --SONW3.*/&\n R1\/R2 07.00 06.00/" a.txt>b.txt
作者: CrLf 时间: 2014-10-12 21:22
可以用其他字符代替 /,一般建议用这些:- sed -r -e "s#^ --SONW3.*#&\n R1/R2 07.00 06.00#" a.txt>b.txt
- sed -r -e "s@^ --SONW3.*@&\n R1/R2 07.00 06.00@" a.txt>b.txt
- sed -r -e "s_^ --SONW3.*_&\n R1/R2 07.00 06.00_" a.txt>b.txt
- sed -r -e "s=^ --SONW3.*=&\n R1/R2 07.00 06.00=" a.txt>b.txt
复制代码
也可以用字母和数字,但不建议这么做:- sed -r -e "sE^ --SONW3.*E&\n R1/R2 07.00 06.00E" a.txt>b.txt
- sed -r -e "s8^ --SONW3.*8&\n R1/R2 07.00 06.008" a.txt>b.txt
复制代码
甚至连用不着的元字符也可以当分隔符使,不推荐:- sed -r -e "s+^ --SONW3.*+&\n R1/R2 07.00 06.00+" a.txt>b.txt
- sed -r -e "s?^ --SONW3.*?&\n R1/R2 07.00 06.00?" a.txt>b.txt
复制代码
作者: syqh2010 时间: 2014-10-12 22:56
回复 2# Batcher
谢谢,已完美解决,多谢帮忙再次修改贴子!
作者: syqh2010 时间: 2014-10-12 22:58
回复 3# CrLf
谢谢你的详细解答!!!受教了,看来没有批处理搞不定的问题。
作者: syqh2010 时间: 2014-10-12 22:58
回复 3# CrLf
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |