开发手册 欢迎您!
软件开发者资料库

Linux sed命令的使用及正则表达式

正则表达式是一个字符串,可以用来描述多个字符序列。有几个Linux命令支持使用正则表达式,包括ed、sed、awk、grep,vi也支持但不是所有功能。sed是一种非交互式的流编辑器,可动态编辑文件。这个面向流的编辑器是专门为执行脚本而创建的。可以用来分析关键字的使用、统计等,以及将数据进行替换、删除、选中、选取特定行等功能。提供给它的所有输入都传递到STDOUT,它不会更改输入文件。

1、sed命令数据输入的方式

1)使用管道(|)输入

可以通过管道向其发送数据,使用方式如下,

$ cat /etc/passwd | sedUsage: sed [OPTION]... {script-other-script} [input-file]...  -n, --quiet, --silent                 suppress automatic printing of pattern space  -e script, --expression = script...............................

注意cat命令将/etc/passwd的内容通过管道转储到sed的pattern空间。pattern空间是sed用于其操作的内部工作缓冲区。

2)直接从文件中读取数据

sed 从文件中读取数据,而不是通过管道向其发送文件来调用 sed,

例如,

$ sed -e 'd' /etc/passwd

2、sed命令使用的语法

sed [-hnV][-e