Linux命令sed

sed流编辑器:Stream EDitor

sed行编辑器,使用sed,将文件的行加载到内存,符合sed模式空间的显示到屏幕上,sed默认不编辑文件,仅对模式空间的数据处理,处理结束后,将符合模式空间的行打印到屏幕上

sed模式空间

sed [options选项] ‘AddressCommand‘ file ...

options: 选项,如 -n静默模式,只显示符合条件的行,不显示模式空间的内容
Address: 指的是文件行的地址,如第一行到第10行
Command: 指的是对文件行的操作,删除,打印等
file: 指的是文件的路径
三个点: 可以接多个文件

options

1、-n

静默模式,只显示符合条件的行,不显示模式空间的内容

2、-p

3、-e

-e ‘script‘ -e ‘script‘ 引号里的内容,-e 可以指定多个

4、-r

表示使用扩展的表达式

Address

1、Startline,Endline

startline,开始行,默认是从第一行开始
endline, 结束行,$表示最后一行

2、/RegExp正则表达式/

正则表达式匹配到的行,如 /^root/ 以root开始的行

3、/模式1/,/模式2/

第一次被模式1匹配到的行开始,至第一次被模式2匹配到的行结束中间的所有行

4、LineNumber 行号

5、StartLine,+N

从startline开始,向后N行,共N+1行

Command

1、d:删除符合条件的行

2、p:显示符合条件的行

3、a \string:在指定行的后面新加一行,内容为string

4、 i \string:在指定行的前面新加一行,内容为string

5、r file文件路径:将指定文件的内容,添加到符合条件的行的后面

6、w file文件路径:将指定范围的内容,另存至指定的文件中

s:查找并替换

s/查找/替换/修饰符

s/ / /g
s# # #g
[email protected] @ @g

修饰符:

g 全局替换
i 忽略大小写

原文地址:http://blog.51cto.com/11193863/2317595

时间: 2024-10-13 23:45:46

Linux命令sed的相关文章

[ Linux命令 ] sed

一.sed是什么? Linux sed命令是利用script来处理文本文件. sed可依照script的指令,来处理.编辑文本文件. Sed主要用来自动编辑一个或多个文件:简化对文件的反复操作:编写转换程序等. 二.sed基本语法 sed基本用法: sed: 流编辑器,行编辑器 ( 全屏编辑器:vim ) 模式空间:默认不编辑源文件,仅对模式空间中的数据做处理 sed [option]'AddressCommand' file ... -n: 静默模式    不再默认显示模式空间中的内容    

Linux 命令---- sed

sed 命令:  常用场景:1. 在指定位置增加内容2. 删除指定字符所在的行:3. 替换指定字符串为新的字符串:4. 只显示包含指定字符的内容 Answer:-i: 表示将修改直接持久化到文件中1.>sed -i '/test/a\one\ntwo' test.txt // 在存在test字符串的行后添加one 然后换行添加two 注: 不用加 g选项 就默认把符合条件的都加入 a\ 后面的内容 加入一行默认是自动换行:最后一行不用加 \n >sed -i '#test_3#a\two' t

linux命令-sed,uniq,cut,wc

sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序. sort语法 [[email protected] ~]# sort [-fbMnrtuk] [file or stdin] 选项与参数: -f :忽略大小写的差异,例如 A 与 a 视为编码相同: -b :忽略最前面的空格符部分: -M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法: -n :使

Linux命令----sed和awk

sed -n :加上-n参数后,只有经过sed特殊处理的哪一行或者动作才会被列出来. 动作说明:[n1,n2[function]] function : a:新增,a的后面可以接字符串,而这些字符串会在新的一行出现(目前的下一行) c:取代,c的后面可以接字符串,这些字符串可以取代 n1,n2 之间的行 d:删除,d后面通常不接任何东西; i:插入,i后面可以接字符串,而这些字符串会出现在新的一行(目前的上一行) p:列印, s:取代,可以直接进行取代的工作,通常这个s的动作可以搭配正则表示法

Linux 常用命令sed/awk/grep及正则表达式

linux命令sed和awk sed 主要功能 sed,stream editor.是一个"非交互式"字符流编辑器.输入流通过程序并输出到标准输出端. sed主要用来自动编辑一个或者多个文件(替换,插入,删除,追加,更改) 常见应用 抽区域 匹配正则表达式 比较域 增加,附加,替换 执行过程 sed一次处理一行或多行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区

linux下的文本处理命令sed&awk&grep

Sedsed 是个精简的.非交互式的编辑器.他能执行和编辑vi和emacs相同的编辑任务.sed编辑器不提供交互使用方式:只能在命令行输入编辑命令.指定文件名,然后在屏幕上察看输出.sed编辑器没有破坏性.他不会修改文件,除非用shell重定向来保存输出结果.缺省情况下,所以的输出都被打印到屏幕上.sed 编辑器在shell脚本中非常有用,因为在shell脚本中使用像vi或emacs这类交互式编辑器,需求脚本用户精通该编辑器,而且还会导致用户对打开 的 文件做出不必的修改.如果需要执行多项编辑任

关于linux中sed命令的简单用法

linux中sed的学习和使用 今天突然用到了sed这个命令,就即兴学习了一波突然感觉这个功能还是很强的.sed在#man sed下文档查看解释的是:用于过滤和转换文本的流编辑器.即如下图: 我自己用过这个命令之后感觉对于文档来说可以显示某个区间行,显示结果还可以在段前后添加内容删除,替换内容.但是最后才发现,怎么还能直接修改到文件里不仅仅是显示出来,文件内容直接被修改了. 下面就一一介绍这个有趣的命令,莫急莫急一个一个来. 首先找个文件(没用的文件且有内容,搞坏了系统文件可不好玩了)来当测试文

利用多核CPU来加速Linux命令 — awk、sed、bzip2、grep、wc

你是否曾经有过要计算一个非常大的数据(几百GB)的需求?或在里面搜索,或其它操作--一些无法并行的操作.数据专家们,我是在对你们说.你可能有一个4核或更多核的CPU,但我们合适的工具,例如 grep, bzip2, wc, awk, sed等等,都是单线程的,只能使用一个CPU内核.借用卡通人物Cartman的话,"如何我能使用这些内核"?要想让Linux命令使用所有的CPU内核,我们需要用到GNU Parallel命令,它让我们所有的CPU内核在单机内做神奇的map-reduce操作

《sed的流艺术之三》-linux命令五分钟系列之二十三

本原创文章属于<Linux大棚>博客,博客地址为http://roclinux.cn.文章作者为rocrocket. 为了防止某些网站的恶性转载,特在每篇文章前加入此信息,还望读者体谅. === [正文开始] 上文接:<sed的流艺术之二>-linux命令五分钟系列之二十二 例五 给某些字符串后面插入些内容 [[email protected] programming]$ cat mysed.txt Beijing London[[email protected] programm