手机
当前位置:查字典教程网 >电脑 >服务器_操作系统教程 >Linux下sed命令使用全解析
Linux下sed命令使用全解析
摘要:一、Sed简介Sed:StreamEditor流式编辑器又称行编辑器,每次只编辑一行。Sed工作是在“模式空间”中进...

一、Sed简介

Sed:Stream Editor 流式编辑器 又称行编辑器,每次只编辑一行。Sed工作是在“模式空间”中进行的,并不操作源文件。对源文件无危害。

二、Sed使用格式

Sed命令的常用格式如下:

(1)Sed [options] ‘script’ input_file…

(2)Sed [options] –f script_file input_file…

(3)Sed [options] ‘ADDR1,ADDR2command’ input_file…

例如:#sed ’1,2d’ fstab 就可以将fstab的前两行删除并显示出来,但是它不会改变源文件。

#Sed ‘1,2!d’ fstab 表示删除除第一行和第二行之外的所有行。

(4)Sed [options] ‘/PATTERN/command’ input_file……

&:s/l..e/&er/:表示引用前面匹配到的所有字符。

例如:sed ‘/[[:upper:]]/d’ binary.sh 表示删除所有的大写字母的行。

(5)Sed ‘/PATTERN1/,/PATTERN2/command’ input_file……

说明:这表示从第一次被PATTERN1匹配到的行到第一次被PATTERN2匹配到的中间的所有行执行command命令。

三、Sed的常用选项:

-n:只显示sed匹配到的行。其余行不显示。下文有范例。

-i :可以直接操作原文件。默认情况下sed不会改变原文件,但是-i选项可以修改原文件,此选项应慎用。

-r:可以使用标准正则表达式。默认情况下sed只支持基本正则表达式,但是加上-r选项后则支持扩展正则表达式

-e:多脚本共用。可以同时执行多个命令。例如:

代码如下:

[root@localhost ~]# sed -e 's@@H1@g' -e 's@(l..e).@1r.@g' test

He love His lover.

She like Her liker.

Dove love Her liker.

也可以这样用,中间用分号隔开:

代码如下:

[root@localhost ~]# sed 's@@H1@g;s@(l..e).@1r.@g' test

四、使用示例

代码如下:

#sed -e 命令行处理 -a 新增

> sed -e '$ a widuu' test.txt #在test.txt的结尾处添加widuu

Linux下sed命令使用全解析1

代码如下:

# 把-e换成-n

> sed -n '$ a widuu' test.txt # 只显示被处理的一行

Linux下sed命令使用全解析2

代码如下:

# -c 替换多少行 为你制定的字符串,这里我的test.txt内容如图

> sed -e '2,5c xiaowei' test.txt #把2-5行替换成字符串xiaowei

Linux下sed命令使用全解析3

代码如下:

# 多命令执行 -e

> sed -e '2,5c xiaowei' -e 's/cccc/widuu/' test.txt

Linux下sed命令使用全解析4

代码如下:

# -i 不输出 -s 替换

>sed -i 's/111111/widuu/g' test.txt

Linux下sed命令使用全解析5

代码如下:

# i 插入 自定义的字符串 在test.txt的第二行插入xiaowei

> sed -e '2i xiaowei' test.txt

Linux下sed命令使用全解析6

代码如下:

# d 删除输入任何字符串

> sed -e '2d' test.txt #删除第二行

Linux下sed命令使用全解析7

【Linux下sed命令使用全解析】相关文章:

Linux下的sed命令使用详解

Linux系统下wget命令的使用教程

Linux系统下tar命令的使用技巧总结

在Linux系统中使用tar命令压缩和解压文件的教程

Linux中的ls命令详细使用

Linux系统中字符串搜索命令ngrep的用法

获取Linux命令帮助的六种方法

Linux系统中的passwd命令实用技巧小结

在Linux下HTTPie工具的使用教程

Linux系统下chkconfig命令使用详解

精品推荐
分类导航