[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] "一起来学习强大的sed"的困惑[已解决]

一起来学习强大的sed是篇很好的sed学习文章,感谢作者的辛勤劳动.不过,当我照着文章中的例子练习时,却遇到了困难.我使用的系统是xp sp3,sed的版本依次更换为批处理之家论坛的sed4.2.2 for win32单文件版,跨平台命令行工具-grep gawk sed windows版本 从git中抽出来的.[http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=2331147],还有从官网下载的.练习到"显示所有以字符"a"开头的行",以及下面的几个例子,只要有符号"^"在sed里面,都会这样,为什么会这样?恳请懂的人指点下,谢谢!
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

看上去没错,测试也没问题,楼主的 a.txt 是什么编码、什么内容?
单文件版有点问题,建议还是用带 dll 的,gnu 系列的 dll 大多是共用的,不会占太多空间。

TOP

用记事本打开d:\a.txt
文件
另存为
在编码格式的下拉列表里面选择ANSI

TOP

回复 3# Python

谢谢啦,不过,好象不行呀
情况就是这样,但为什么会是这样?sed已经换成带 dll 的,并且是gnu 系列的,有3个dll.希望继续指点指点我,谢谢!

TOP

哥们,你的文本开头是一串空白符吧

那当然匹配不到

/^a/p   匹配的是开头a的行
---学无止境---

TOP

回复 4# wangb70
  1. sed -n "/^[ \t]*a/p" d:\a.txt
复制代码

TOP

回复 5# broly


    多谢byoly,你一说我才注意到文本开头是一串空白符,我把原文a.txt中的内容挪到最左边
可以了,不过,该如何练习原文中带有符号"^"的例子,是不是都需要把a.txt中的内容挪到最左边,使文本开头没有空白符才行,练习原文中带有符号"^"的例子,有更好的方法吗?

TOP

回复 6# Python

谢谢python的热情指导,可以了,在sed -n "/^[ \t]*a/p" d:\a.txt中,^[\t]*表示什么意思,可否顺便教教我们这些还不太会的人,多谢!

TOP

回复 8# wangb70


\t表示制表符tab
[ \t]把空格和\t放在放在方括号里面表示一个集合,匹配的是空格或tab
[ \t]*表示空格或tab出现任意多次(包括零次)
1

评分人数

TOP

回复 9# Python

这下明白了,不因新手问题的简单而轻视怠慢,反而耐心细致的讲解知识,做到这一步不简单,日后我若学会相关知识,一定向python一样帮助别人,分享知识,祝一切都好
wangb

TOP

回复 10# wangb


    论坛很多这样的网友
nevermore

TOP

返回列表