上一页 1 2 3 4 5 6 ··· 22 下一页
摘要: 了解行(line)与字符串(string)的差异是相当重要的。大部分简易程序都是处理输入数据的行,像 grep 与 egrep,以及 sed 大部分的工作(99%)都是这样。在这些情况下,不会有内嵌的换行符出现在将要匹配的数据中,^与$则分别表示行的开头与结尾。 然而,对可应用正则表达式的程序语言, 阅读全文
posted @ 2019-01-23 10:01 Avention 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 很多的应用程序,会将数据视为记录与字段的结合,以便于处理。一条记录(record)指的是相关信息的单个集合,例如以企业来说,记录可能含有顾客、供应商以及员工等数据,以学校机构来说,则可能有学生数据。而字段(field)指的就是记录的组成部分,例如姓、名或者街道地址。 阅读全文
posted @ 2019-01-23 10:01 Avention 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 有个问题我们一直没讨论到:有多少文本会匹配 ?事实上,这应该包含两个问题。第二个问题:从哪开始匹配?执行简单的文本查找,例如使用 grep 或 egrep 时,则这两个问题都不重要,你只要知道是否有一行是匹配的,若有,则看看那一行是什么。至于在这个行里,是从哪儿开始匹配,或者它扩展到哪里,已经不重要 阅读全文
posted @ 2019-01-23 09:13 Avention 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 如前所述,sed 默认的会将每一个编辑命令(editing command)应用到每个输入行。而现在我们要告诉你的是:还可以限制一条命令要应用到哪些行,只要在命令前置一个地址(address)即可。因此,sed 命令的完整形式是: address command 行编号 可以使用绝对的行编号作为地址 阅读全文
posted @ 2019-01-23 09:12 Avention 阅读(115) 评论(0) 推荐(0) 编辑
摘要: -n 选项修改了 sed 的默认行为。当提供此选项时,sed 将不会在操作完成后打印模式空间的最后内容。反之,若在脚本里使用 p,则会明白地将此行显示出来。举例来说,我们可以这样模拟 grep : sed -n '/<HTML>/p' *.html 仅显示<HTML>这行 [many@aventio 阅读全文
posted @ 2019-01-23 09:12 Avention 阅读(98) 评论(0) 推荐(0) 编辑
摘要: sed 的工作方式相当直接。命令行上的每个文件会依次打开与读取。如果没有文件,则使用标准输入,文件名“-”(单个破折号)可用于表示标准输入。 [many@avention Desktop]$ sed 's/hello/HELLO/' - hello world 输入 HELLO world 输出 s 阅读全文
posted @ 2019-01-23 09:11 Avention 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 先前已经提过,除斜杠还可以使用其他任意字符作为定界符;在正则表达式或替代文本里,也能转义定界符,不过这么做可能会让命令变得很难看懂: sed 's/\/home\/tolstoy\//\/home\/.lt\//' 在前面的3.2.2节里,我们已经讲到 POSIX 的 BRE 时,已说明后向引用在正 阅读全文
posted @ 2019-01-23 09:11 Avention 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 你可能会常在管道(pipeline)中间使用 sed,以执行替换操作。做法是使用 s 命令--要求正则表达式寻找,用替代文本替换匹配的文本,以及可选用的标志: sed 's/:.*//' /etc/passwd/ | sort -u 删除第一个冒号之后的所有东西,排序列表并删除重复部分 sed 语法 阅读全文
posted @ 2019-01-23 09:10 Avention 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 很多 Shell 脚本的工作都从通过 grep 或 egrep 取出所需的文本开始。正则表达式查找的最初结果,往往就成了要拿来做进一步处理的“原始数据”。通常,文本替换至少需要做意见事,就是将一些字以另一些字取代,或者是删除匹配行的某个部分。 一般来说,执行文本替换的正确程序应该是 sed--流编辑 阅读全文
posted @ 2019-01-23 09:10 Avention 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 很多程序提供正则表达式语法扩展。这类扩展大多采取反斜杠加一个字符,以形成新的运算符。类似 POSIX BRE 里 \( \) 与 \{ \} 的反斜杠。 最常见的扩展为 \< 与 \> 运算符,分别匹配 “单词 word”的开头与结尾。单词是由字母、数字、及下划线组成的。我们称这类字符为单词组成。 阅读全文
posted @ 2019-01-23 09:09 Avention 阅读(185) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 22 下一页