概述

sed是一种流编编器,它是文本处理中非常中的工具,能够完美的配合正则表达式便用,功物能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为”模式空间”( space),接看用sed命令处理缓冲区中的内容,处理成后,把缓冲区的内容送往屏幕显示。

接着理下一行,这样不断重复,直到文件末。文件内容没有改改变,除非使用了写入的命令,将内容更新。定址用于决定对哪些行进行编辑。地址的形式可以是数字、正则表达式、或二者的结合。如果没有指定地址,sed将处理输入文件的所有行。

一、sed语法

sed 命令的基本格式如下:

sed [选项] [脚本命令] 文件名

该命令常用的选项及含义,如表 1 所示。

sed_sed命令_linuxsed大小写

成功使用 sed 命令的关键在于掌握各式各样的脚本命令及格式,它能帮你定制编辑文件的规则。

二、sed脚本命令

sed s 替换脚本命令此命令的基本格式为:

[address]s/pattern/replacement/flags

其中, 表示指定要操作的具体行, 指的是需要替换的内容, 指的是要替换的新内容。

关于指定具体操作行()的用法,这里先不做解释,文章后续会对其做详细介绍。

此命令中常用的 flags 标记如表 2 所示。

linuxsed大小写_sed_sed命令

三、实例演示

1、只打印第三行

sed -n '3p' /var/log/yum.log

linuxsed大小写_sed命令_sed

2、只查看文件的第3行到第9行

sed -n '3,9p' /var/log/yum.log

sed命令_linuxsed大小写_sed

3、过滤特定字符串,显示正行内容

sed -n '/perl/p' /var/log/yum.log

linuxsed大小写_sed命令_sed

4、打印1-5行,并显示行号

sed -n -e '1,5p' -e '=' /var/log/yum.log

sed命令_sed_linuxsed大小写

5、替换

sed 's/disabled/enforcing/g' /etc/selinux/config 
sed -i 's/disabled/enforcing/g' /etc/selinux/config 

sed命令_sed_linuxsed大小写

6、正则匹配IP和子网掩码

ifconfig |sed -n '2p'
ifconfig |sed -n '2p' | sed -r 's#.*r:(.*) B.*k:(.*)#1 2#g' 
--(.*)表示匹配的项,之后可以用1取出第一个括号内匹配的内容,2取出第二个括号内匹配的内容 

7、sed错误使用

sed 's#,# #h' xx.txt | cut -d" " -f 3,5 xx.txt  正确的用法

———END———
限 时 特 惠: 本站每日持续更新海量各大内部创业教程,永久会员只需109元,全站资源免费下载 点击查看详情
站 长 微 信: nanadh666

声明:1、本内容转载于网络,版权归原作者所有!2、本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。3、本内容若侵犯到你的版权利益,请联系我们,会尽快给予删除处理!