![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-07 12:48 |
共 48,040 主题排行 / 350,125 发帖 / 今日 0 篇 / 48,252 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]有关sed的问题请教 |
| 可打印版本 703 / 1 |
| 第1楼 sylovanas | 发表于 2008-02-12 19:18 |
| 初级用户 发帖 42 积分 107 | |
|
[求助]有关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是?为何要用{}框起来 |
|
| 第2楼 lxmxn | 发表于 2008-02-13 00:14 |
| 版主 发帖 4,938 积分 11,386 | |
|
H命令是将模式空间的内容追加到保存区域中去,中间用换行符分割;
g命令是将保存区域的内容复制到模式空间,并销毁模式空间的内容; p是打印模式空间的内容。 至于为什么用{},因为{}代表的grouping(分组),表示里面的命令都对前面的模式空间有效。 具体参考无奈何版主发的相关教程: http://www.cn-dos.net/forum/viewthread.php?tid=24210 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |