1.6.1. Unix 文本工具
这里有一些在类 Unix 系统中经常使用到的标准文本处理工具。
没有使用正则表达式:
cat(1) 连接文件并输出全部的内容。
tac(1) 连接文件并反向输出。
cut(1) 选择行的一部分并输出。
head(1) 输出文件的开头。
tail(1) 输出文件的末尾。
sort(1) 对文本文件的行进行排序。
uniq(1) 从已排序的文件中移除相同的行。
tr(1) 转换或删除字符。
diff(1) 对文件的行进行对比。
使用基础的正则表达式( BRE ):
grep(1) 匹配满足 pattern 的文本。
ed(1) 是一个原始行编辑器。
sed(1) 是一个流编辑器。
vim(1) 是一个屏幕编辑器。
emacs(1) 是一个屏幕编辑器。(有些扩展的 BRE )
使用扩展的正则表达式( ERE ):
egrep(1) 匹配满足多个 pattern 的文本。
awk(1) 进行简单的文本处理。
tcl(3tcl) 可以进行任何你想得到的文本处理:参见 re_syntax(3) 。经常与 tk(3tk) 一起使用。
perl(1) 可以进行任何你想得到的文本处理。参见 perlre(1) 。
pcregrep
软件包中的 pcregrep(1) 可以匹配满足 Perl 兼容正则表达式(PCRE) 模式的文本。
带有
re
模块的 python(1) 可以进行任何你想得到的文本处理。参见“/usr/share/doc/python/html/index.html
”。
如果你不确定这些命令究竟做了什么,请使用“man command
” 来自己把它搞清楚吧。
注意 | |
---|---|
排序的顺序和表达式的范围取决于语言环境 。如果你想要获得一个命令的传统行为,可以在命令之前使用 “ |
注意 | |
---|---|
Perl 正则表达式( perlre(1) )、Perl 兼容正则表达式(PCRE) 和 Python 的 |