中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: [求助]有关sed的问题请教 上一主题 | 下一主题
sylovanas
初级用户





积分 107
发帖 42
注册 2007-9-3
状态 离线
『楼 主』:  [求助]有关sed的问题请教

不好意思我是用繁体转成简体的方式发问的,文法有怪异的地方还请多见谅

指令是如下:

SED -n -r "/stubpath\t.*\t.|hkey_/I!d; s/^hkey_.*/\n[&]/I;/stubpath\t/I{s/.*\t//; H; g; p;} ;h" temp00.txt


我看到/stubpath\t.*\t.|hkey_/I!d; s/^hkey_.*/\n[&]/I;都还可以,但后面的/stubpath\t/I{s/.*\t//; H; g; p;} ;h我不太了解

想请问他是要对/stubpath\t/有这一行的东西要做什么样的处理?
是指\t前的文字去掉,然后H;g;p是?为何要用{}框起来

2008-2-12 19:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 2 楼』:  

H命令是将模式空间的内容追加到保存区域中去,中间用换行符分割;
g命令是将保存区域的内容复制到模式空间,并销毁模式空间的内容;
p是打印模式空间的内容。

至于为什么用{},因为{}代表的grouping(分组),表示里面的命令都对前面的模式空间有效。

具体参考无奈何版主发的相关教程:
http://www.cn-dos.net/forum/viewthread.php?tid=24210

2008-2-13 00:14
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: