首页 > 其他 > 详细

sed用法

时间:2020-05-26 13:52:59      阅读:46      评论:0      收藏:0      [点我收藏+]

 

2-1、n命令
n命令简单来说就是提前读取下一行,覆盖模型空间前一行(并没有删除,因此依然打印至标准输出),如果命令未执行成功(并非跳过:前端条件不匹配),则放弃之后的任何命令,并对新读取的内容,重头执行sed。
例子:
从aaa文件中取出偶数行
cat aaa 
This is 1 
This is 2 
This is 3 
This is 4 
This is 5

sed -n ‘n;p‘ aaa //-n表示隐藏默认输出内容 
This is 2 
This is 4
注释:读取This is 1,执行n命令,此时模式空间为This is 2,执行p,打印模式空间内容This is 2,之后读取 This is 3,执行n命令,此时模式空间为This is 4,执行p,打印模式空间内容This is 4,之后读取This is 5,执行n 命令,因为没有了,所以退出,并放弃p命令。因此,最终打印出来的就是偶数行。

2-3、d命令
d命令是删除当前模式空间内容(不在传至标准输出),并放弃之后的命令,并对新读取的内容,重头执行sed。
d命令例子
从aaa文件中取出奇数
cat aaa 
This is 1 
This is 2 
This is 3 
This is 4 
This is 5

sed ‘n;d‘ aaa 
This is 1 
This is 3 
This is 5
注释:读取1,执行n,得出2,执行d,删除2,得空,以此类推,读取3,执行n,得出4,执行d,删除4,得空,但是读取5时,因为n无法执行,所以d不执行。因无-n参数,故输出1\n3\n5

 

特定字符串的行后插入新行

sed -i ‘/特定字符串/a 新行字符串‘ file

sed用法

原文:https://www.cnblogs.com/aspirs/p/12964735.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!