egrep命令 口使用egrep的主要好处是,它在使用grep提供 的正则表达式元字符基础上增加了更多的元字符,见 下表,但不能使用八{\}。 在Linux"下:egrep=grep-E egrep增加的元字符 匹配一个或多个前一字符 ? 匹配零个或一个前一字符 strl|str2 匹配str1或str2 () 字符组 注意星号*和问号?在shell通配符和正则表达式中的区别
11 使用 egrep 的主要好处是,它在使用 grep 提供 的正则表达式元字符基础上增加了更多的元字符,见 下表,但不能使用 \{ \}。 egrep 增加的元字符 在 Linux下:egrep = grep -E egrep 命令 ? 匹配零个或一个前一字符 str1|str2 匹配 str1 或 str2 ( ) 字符组 + 匹配一个或多个前一字符 注意星号 * 和问号 ? 在 shell 通配符和正则表达式中的区别
egrep举例与fgrep egrep WE+datafile egrep 'WE?'datafile egrep 'S(hlu)'datafile egrep 'Shlu'datafile 口fgrep命令 fgrep的使用方法与grep类似,但对正则表达式中的任 何元字符都不做特殊处理。 fgrep 'n'datafile 12
12 egrep 'WE+' datafile egrep 'WE?' datafile egrep 'Sh|u' datafile egrep 'S(h|u)' datafile fgrep 命令 fgrep 的使用方法与 grep 类似,但对正则表达式中的任 何元字符都不做特殊处理。 fgrep '^n' datafile egrep 举例与 fgrep
流编辑器sed 口sed是什么 sed是一个精简的、非交互式的编辑器,它在命令行中输 入编辑命令和指定文件名,然后在屏幕上查看输出。 ▣sed如何工作 sed逐行处理文件(或输入),并将输出结果发送到屏幕。 即:sed从输入(可以是文件或其它标准输入)中读取一行, 将之拷贝到一个编辑缓冲区,按指定的sed编辑命令进行处 理,编辑完后将其发送到屏幕上,然后把这行从编辑缓冲区中 删除,读取下面一行。重复此过程直到全部处理结束。 sed只是对文件在内存中的副本进行操作,所以sed不会修 改输入文件的内容。sed总是输出到标准输出,可以使用重 定向将sed的输出保存到文件中
13 sed 是一个精简的、非交互式的编辑器,它在命令行中输 入编辑命令和指定文件名,然后在屏幕上查看输出。 sed 是什么 sed 如何工作 sed 逐行处理文件(或输入),并将输出结果发送到屏幕。 即:sed 从输入(可以是文件或其它标准输入)中读取一行, 将之拷贝到一个编辑缓冲区,按指定的 sed 编辑命令进行处 理,编辑完后将其发送到屏幕上,然后把这行从编辑缓冲区中 删除,读取下面一行。重复此过程直到全部处理结束。 sed 只是对文件在内存中的副本进行操作,所以 sed 不会修 改输入文件的内容。sed 总是输出到标准输出,可以使用重 定向将 sed 的输出保存到文件中。 流编辑器 sed
sed的三种调用方式 ◆ 在命令行中直接调用 sed [-n][-e]'sed cmd'input file ●-n:缺省情况下,sed在将下一行读入缓冲区之前,自动输 出行缓冲区中的内容。此选项可以关闭自动输出。 ·-e:允许调用多条sed命令,如: sed -e 'sed cmd1'-e 'sed cmd2'input file ●sed cmd:使用格式:[address]sed edit cmd(通常用 单引号括起来),其中address为sed的行定位模式,用于指 定将要被sed编辑的行。如果省略,sed将编辑所有的行。 sed edit cmd为sed对被编辑行将要进行的编辑操作。 ●input file:sed编辑的文件列表,若省略,sed将从标 准输入(重定向或管道)中读取输入。 14
14 在命令行中直接调用 sed [-n][-e] 'sed_cmd' input_file z -n:缺省情况下,sed 在将下一行读入缓冲区之前,自动输 出行缓冲区中的内容。此选项可以关闭自动输出。 z -e:允许调用多条 sed 命令,如: sed -e 'sed_cmd1' -e 'sed_cmd2' input_file z sed_cmd:使用格式: [address]sed_edit_cmd (通常用 单引号括起来),其中 address 为 sed 的行定位模式,用于指 定将要被 sed 编辑的行。如果省略,sed 将编辑所有的行。 sed_edit_cmd 为 sed 对被编辑行将要进行的编辑操作。 sed 的三种调用方式 z input_file:sed 编辑的文件列表,若省略,sed 将从标 准输入(重定向或管道)中读取输入
sed的三种调用方式 ◆将sed命令插入脚本文件,然后调用 sed[选项]-f sed script file input file 例:sed-n-f sedfilel datafile ◆将sed命令插入脚本文件,生成sed可执行脚本 文件,在命令行中直接键入脚本文件名来执行。 #!/bin/sed -f sed cmdl 。。,。。。 例:./sedfile2.sed-n datafile 15
15 sed [选项] -f sed_script_file input_file 将 sed 命令插入脚本文件,生成 sed 可执行脚本 文件,在命令行中直接键入脚本文件名来执行。 #!/bin/sed -f sed_cmd1 ... ... 例:sed –n –f sedfile1 datafile 例:./sedfile2.sed -n datafile sed 的三种调用方式 将 sed 命令插入脚本文件,然后调用