linux sed 命
sed(stream editor):是流编辑器,按行进行操作,对符合模式的行在内存中进行操作,不对原文件进行修改,处理结束后将模式空间打印到屏幕。
sed 的模式空间 处理文件流的内存空间叫模式空间,这个模式空间可以用正则表达式对文件进行过滤。
sed [optitons]'AddressCommand' file,file....
[optition]
-n 不再显示模式空间中的内容,
-i 直接修改原文件,
-e :可以同时执行多个脚本
-f 指定一个文件 文件里面保存操作的脚本
-r:表示使用扩展正则表达式
Address
Address:
1.StartLine,EndLine 用逗号隔开
2.模式 /Pattern/ Pattern=RegExp eg:/^root/ 以root 开头的行
3./pattern1/,/pattern2/,第一次被pattern1匹配到的行至第一次被pattern2匹配到的行
4.只给一个数值,特定的一行。$表示最后一行。
5.指定起始行,StartLine,+N,从StartLine开始,向后N行。
Command:
d:删除符合条件的行
p:显示符合条件的行 显示以斜线开头的行 eg:sed '/^\//p' /etc/fstab
a: \string: 在指定的行后面追加新行,内容为string eg:'/^\//a \hello word' /etc/fstab 寻找/etc/fstab 中以反斜杠开头的行,并在后面添加 hello word
i: \string;在指定的行前面添加新行,内容为string
r file :将指定的文件的内容添加至符合条件的行处 eg:sed '2r /etc/issue' /etc/fstab
w file :将指定范围内的内容另存为另外一个文件中 eg: sed '/oot/w /tmp/oot.txt' /etc/fstab 将/etc/fstab中含有oot的行保存到/tmp/oot.txt中
s:/pattern/string/修饰符:查找并替换,默认替换每行中第一次被模式匹配到的字符串。加修饰符 g:全局替换。i:查找时忽略字符大小写。s后面的分隔符可以用用几个相同的字符代替。比如###
sed's/oot/OOT/' /etc/fstab,sed's/^\//#/' /etc/fstab将行首的反斜杠替换为井号。
&:表示引用的模式匹配到的串。 sed 's#l..e#&r#g' sed.txt 将符合l..e 的字符串替换为后面加r
或者sed 's#\(l..e\)#\1r#g' sed.txt 这叫做后向引用。
linux sed 命的更多相关文章
- Linux sed 替换第一次出现的字符串
/********************************************************************************* * Linux sed 替换第一次 ...
- linux sed命令参数及用法详解
linux sed命令参数及用法详解 http://blog.csdn.net/namecyf/article/details/7336308 1. Sed简介 sed 是一种在线编辑器,它一次处理一 ...
- linux sed 批量替换多个文件中的字符
格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` linux sed 批量替换多个文件中的字符串 sed -i "s/oldst ...
- [转帖]linux sed命令
linux sed命令就是这么简单 https://www.cnblogs.com/wangqiguo/p/6718512.html 用到的最多的就是一个sed -i 's/nn/mm/' 的命令了. ...
- 理解linux sed命令
理解linux sed命令(2010-02-27 18:21:20) 标签:linuxshellsed替换 分类:革命本钱 1. Sed简介sed是一种在线编辑器,它一次处理一行内容.处理时,把当 前 ...
- learn Linux sed command
learn Linux sed command 一.参考文档: . sed命令详解 http://qifuguang.me/2015/09/21/sed%E5%91%BD%E4%BB%A4%E8%AF ...
- 【转】linux sed命令
转自:linux sed命令就是这么简单 参考:Linux三大剑客之sed:https://blog.csdn.net/solaraceboy/article/details/79272344 阅读目 ...
- linux sed命令(擅长输出行)(转)
linux命令总结sed命令详解 Sed 简介 sed 是一种新型的,非交互式的编辑器.它能执行与编辑器 vi 和 ex 相同的编辑任务.sed 编辑器没有提供交互式使用方式,使用者只能在命令行输入编 ...
- Linux sed 使用笔记
sed 工具使用笔记 Linux中经常需要对一些超大的文本文件进行操作,例如 GB 级别的 CSV.TXT.LOG 文件,如果使用 vi 或者 vim 编辑器操作会非常慢且卡,此时 sed 工具或许可 ...
随机推荐
- An error occurred while searching for implementations of method
1:在我安装完scala的插件后,在打开方法的实现类(open implementactions)的时候,抛出这个异常,后来发现这个异常是因为我的scala的插件跟我eclipse版本不兼容导致的. ...
- secureCrt 开启Linux上的oracle服务
IP : 192.168.0.21 user: root pwd: 123456 --------------------------------------------------- ...
- Error in as.POSIXlt.character(x, tz, ...) :
> sqlFetch(channel,"user")Error in as.POSIXlt.character(x, tz, ...) : character strin ...
- elk文件
=================正则匹配 [root@web02 conf.d]# cat apache-grok.conf input{ file { path => "/var/ ...
- git学习之安装(二)
安装Git 最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑.不过,慢慢地有人把它移植到了Windows上.现在,Git可以在Linux.Unix.Mac和 ...
- php跨域共享session
. $gb_DBHOSTname = "127.0.0.1"; //主机的名称或是IP地址 02 $gb_DBname = "dbname"; //数据库名称 ...
- strpos 判断字符串是否存在
strpos 中为什么要用逗号隔开的原因是因为 防止找出相匹配的中 , 如 查找1 而数组中 存在 12 那么这个结果也是可以找出来的 ,分别在1 前后加个, 就是为了区 ...
- JQ 修改样式
//获取当前的url var url=document.location.href; var url_cn='http://www.macau-airport.com/cn/our-business/ ...
- 64位win7环境eclipse集成svn后出现Failed to load JavaHL Library的解决办法
http://lushuifa.iteye.com/blog/2038000
- Spring Cloud 微服务五:Spring cloud gateway限流
前言:在互联网应用中,特别是电商,高并发的场景非常多,比如:秒杀.抢购.双11等,在开始时间点会使流量爆发式地涌入,如果对网络流量不加控制很有可能造成后台实例资源耗尽.限流是指通过指定的策略削减流量, ...