找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 20926|回复: 5

[问题求助] [已解决]sed命令怎样输入带“/”文本?

[复制链接]
发表于 2014-10-12 18:31:47 | 显示全部楼层 |阅读模式
本帖最后由 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
输出的内容为空白,查了下好像是说不能用“/”?
请问各位有何办法实现?直线若走不了,绕着走也行。

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2014-10-12 18:40:37 | 显示全部楼层
sed -r -e "s/^ --SONW3.*/&\n     R1\/R2           07.00          06.00/" a.txt>b.txt

评分

参与人数 1技术 +1 收起 理由
syqh2010 + 1 乐于助人

查看全部评分

发表于 2014-10-12 21:22:24 | 显示全部楼层
可以用其他字符代替 /,一般建议用这些:
  1. sed -r -e "s#^ --SONW3.*#&\n     R1/R2           07.00          06.00#" a.txt>b.txt
  2. sed -r -e "s@^ --SONW3.*@&\n     R1/R2           07.00          06.00@" a.txt>b.txt
  3. sed -r -e "s_^ --SONW3.*_&\n     R1/R2           07.00          06.00_" a.txt>b.txt
  4. sed -r -e "s=^ --SONW3.*=&\n     R1/R2           07.00          06.00=" a.txt>b.txt
复制代码
也可以用字母和数字,但不建议这么做:
  1. sed -r -e "sE^ --SONW3.*E&\n     R1/R2           07.00          06.00E" a.txt>b.txt
  2. sed -r -e "s8^ --SONW3.*8&\n     R1/R2           07.00          06.008" a.txt>b.txt
复制代码
甚至连用不着的元字符也可以当分隔符使,不推荐:
  1. sed -r -e "s+^ --SONW3.*+&\n     R1/R2           07.00          06.00+" a.txt>b.txt
  2. sed -r -e "s?^ --SONW3.*?&\n     R1/R2           07.00          06.00?" a.txt>b.txt
复制代码
 楼主| 发表于 2014-10-12 22:56:58 | 显示全部楼层
回复 2# Batcher
谢谢,已完美解决,多谢帮忙再次修改贴子!
 楼主| 发表于 2014-10-12 22:58:21 | 显示全部楼层
回复 3# CrLf
谢谢你的详细解答!!!受教了,看来没有批处理搞不定的问题。
 楼主| 发表于 2014-10-12 22:58:50 | 显示全部楼层
回复 3# CrLf
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 01:07 , Processed in 0.020672 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表