Linux文本三剑客之sed

sed: Stream EDitor, 行编辑器

用法:

sed [option]... ‘script‘ inputfile...

script:

‘地址命令‘

常用选项:

-n:不输出模式中的内容至屏幕

-e: 多点编辑

-f /PATH/TO/SCRIPT_FILE: 从指定文件中读取编辑脚本

-r: 支持使用扩展正则表达式

-i: 原处编辑

地址定界:

(1) 不给地址:对全文进行处理

(2) 单地址:

#: 指定的行

/pattern/:被此处模式所能够匹配到的每一行

(3) 地址范围:

#,#

#,+#

/pat1/,/pat2/

#,/pat1/

(4) ~:步进

编辑命令:

d: 删除

p: 显示模式空间中的内容

a \text:在行后面追加文本;支持使用\n实现多行追加

i \text:在行前面插入文本;支持使用\n实现多行插入

c \text:替换行为单行或多行文本

w /path/to/somefile: 保存模式空间匹配到的行至指定文件中

r /path/from/somefile:读取指定文件的文本流至模式空间中匹配到的行的行后

=: 为模式空间中的行打印行号

!: 取反条件

s///:支持使用其它分隔符,[email protected]@@,s###

替换标记:

g: 行内全局替换

p: 显示替换成功的行

w /PATH/TO/SOMEFILE:将替换成功的结果保存至指定文件中

高级编辑命令:

h: 把模式空间中的内容覆盖至保持空间中

H:把模式空间中的内容追加至保持空间中

g: 从保持空间取出数据覆盖至模式空间

G:从保持空间取出内容追加至模式空间

x: 把模式空间中的内容与保持空间中的内容进行互换

n: 读取匹配到的行的下一行至模式空间

N:追加匹配到的行的下一行至模式空间

d: 删除模式空间中的行

D:删除多行模式空间中的所有行

sed -n ‘n;p‘ FILE:显示偶数行

sed ‘1!G;h;$!d‘ FILE:逆向显示文件内容

sed ‘$!N;$!D‘ FILE: 取出文件后两行

sed ‘$!d‘ FILE:取出文件最后一行

sed ‘G‘ FILE

sed ‘/^$/d;G‘ FILE:

sed ‘n;d‘ FILE: 显示奇数行

sed -n ‘1!G;h;$p‘ FILE: 逆向显示文件中的每一行

时间: 2024-08-11 14:57:07

Linux文本三剑客之sed的相关文章

linux文本三剑客匹配网卡IP地址大PK(CentOS 7系统)

    运维工程师在做配置的过程中很多时候都需要去获取目标服务器网卡上的IP地址,那究竟用什么方式获取更便捷了,博主今天就带大家使用linux文本三剑客分别获取一下网卡的IP地址,最后我们再来对比一下. 实验环境: 系统:CentOS 7.2 网卡张数:双网卡 linux文本三剑客之grep 获取ifconfig输出中的IP地址 ifconfig | egrep -o "\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-1][0-9]|22[0-3])\>.(\

Linux文本处理之sed

Linux文本处理之sed 上一篇我介绍了文本处理grep,现在我来介绍一下文本处理三剑客的第二剑客--sed. sed 是一个比较古老的,功能十分强大的用于文本处理的流编辑器,加上正则表达式的支持,可以进行大量的复杂的文本编辑操作.sed 本身是一个非常复杂的工具,有专门的书籍讲解 sed 的具体用法,但是个人觉得没有必要去学习它的每个细节,那样没有特别大的实际意义.sed是一种流编辑器,处理时,把当前处理的行存储在临时缓冲区中,称为『模式空间』(pattern space),接着用sed命令

文本三剑客之一 “sed”的基础用法和高级用法

sed工具: 用法: sed [option]- 'script' inputfile- 常用选项: -n:不输出模式空间内容到屏幕,即不自动打印[[email protected] ~]# sed -n -e "2p" -e "6p" f1 (2:6代表处理第几行)-e: 多点编辑-f:/PATH/SCRIPT_FILE: 从指定文件中读取编辑脚本-r: 支持使用扩展正则表达式-i.bak: 备份文件并原处编辑 script: '地址命令' 地址定界: (1) 不

Linux文本三剑客超详细教程---grep、sed、awk

awk.grep.sed是linux操作文本的三大利器,合称文本三剑客,也是必须掌握的linux命令之一.三者的功能都是处理文本,但侧重点各不相同,其中属awk功能最强大,但也最复杂.grep更适合单纯的查找或匹配文本,sed更适合编辑匹配到的文本,awk更适合格式化文本,对文本进行较复杂格式处理. 1.grep 1.1 什么是grep和egrep Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来(匹配到的标红).grep全称是Global

linux文本编辑三剑客之sed

sed被称为linux文本处理的三剑客之一. sed的工作机制是对文本按照模式的规定进行逐行的进行操作,但是默认情况下sed不会修改原文件(可以添加参数来修改原文件),因为sed在处理文本的时候会创建自己的模式空间,因此,在对文本处理之前会逐行的将文本内容读入到其模式空间当中,然后在模式空间中再根据匹配条件对这一行的内容做相应的操作.另外,sed同时还提供另外一个空间模式(我们暂称为保持空间),保持空间用来读取模式空间中的内容,然后在根据命令对其做相应的操作.其实保持空间就是sed为了处理模式空

linux 文本三剑客之awk

awk简介 awk同sed.grep被称为linux文本处理三剑客,都起源于行编辑器ed.awk继承了行编辑器的特点,循环的读取文本的每一行(或者是分隔符分割的每一段文本)直至文本结束,但是awk加入了段分割符的概念.将每次读入的行进行再次分割.awk每次读取的行都只是未经过awk语句处理的对象.或读取行后会根据段分割符在将行分成多个对象.结构近似数组,然后进行指定语句的操作.作为一款报表生成器,作用是对对文本内容进行各种排版,进而格式化显示. awk有自己的语法,可以说是一款独立的编程语言.

Linux 文本三剑客之awk 木石前盟

前言 一.木石前盟 众所周知,我们大中华上下5千年历史,其中当属"四大名著"最让人津津乐道.<红楼梦>一书更为四大名著之首,被评为中国古典章回小说的巅峰之作,是中国最受重视的一部文学作品.此书由清代作家曹雪芹所作,故事主线为贾宝玉.林黛玉及薛宝钗三人的爱情与婚姻悲剧,以及贾府等四大家族的没落. 故事开头即提到木石前盟一事.说到林黛玉的前身是绛珠仙草,贾宝玉的前身是神瑛侍者.<红楼梦>第一回"甄士隐梦幻识通灵 贾雨村风尘怀闺秀 "中有这样一段描

Linux文本处理工具——Sed

sed:数据流编辑器: awk:报告文本的生成器 sed 基本用法:(Stream EDitor) Stream 流 EDitor 编辑器 行编辑器 全屏编辑器:vi/vimsed:内存空间(模式空间)默认不编辑源文件,仅对模式空间中的数据作处理,处理结束后,将模式空间打印到屏幕 sed [options] 'AddressCommannd' file ... -n: 静默模式,不再默认显示模式空间中的内容 -i: 直接修改源文件 -e SCRIPT -e SCRIPT:可以同时执行多个脚本 -

Linux文本三剑客之awk的使用

文本处理三剑客: grep.egrep.fgrep:称为文本过滤工具 sed:称为流编辑器,行编辑器 awk:称为报告生成器,主要用于格式化文本输出 awk:Aho,Weinberher,Kernighan 由这个三个作者创建而成,最初是用在UXIN系统上面,后来被GNU组织不断对其进行更新,就形成了gawk,现在linux上用的都是gawk. [[email protected] tmp]# which awk /bin/awk [[email protected] tmp]# ll -d /