linux sed命令使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haluoluo211/article/details/77985202

sed 来源 stream editor"

本文主要内容:

  1. sed输出指定行、排除指定行输出、非连续行输出、行替换显示,指定行后面添加内容
  2. 行数据替换,通配符,指定行范围
  3. 直接修改文件内容

-i:直接修改读取文件的内容,而不是由屏幕输出。 (-i,n用的多些) 动作 ’n1,n2 function’ (其中n1-n2为function处理范围,function参数: [ acdips ]) -a:新增,-a后面接字符串,会出现在目前的行的下一行。 -i:则是上一行 -c:替换n1-n2行为c后面的字符串。 -d:删除n1-n2行字符串。 -p:打印和sed -n结合使用


sed输出指定行、排除指定行输出、非连续行输出、行替换显示


  1. 输出指定行sed -n 'n1,n2 p',例如2-3行,sed -n '2,3p' filename
  2. 删除指定行 sed '2,3d' filename
  3. 指定行后面添加,字符串,例如 第二行后面添加’after line 2’ sed '2a after line 2'
  4. 指定行替换,例如2-3行替换为 'Line2-3' sed '2,3c Line2-3'
  5. 输出myfile.txt lines 5-7 以及 10-13 :
sed -n -e '5,7p' -e '10,13p' myfile.txt

行数据替换,通配符,指定行范围


行部分数据的查找并替换, sed 's/要被代替的字符串/新的字符串/g'

  1. th替换为st, sed 's/th/st/g'
  2. 每一行最后添加’Z’ sed 's/$/Z/g'
  3. 最后一个字符替换为’Z’ , sed 's/.$/Z/g'
  4. 最后一个字符为0-9则替换为’Z’, sed 's/[0-9]$/Z/g'
  5. 行首添加’B’, sed ‘s/^/B/g’
  6. 行首添字符0-9替换为’B’, sed ‘s/^[0-9]/B/g’
  7. 替换指定行,例如替换30-40行
sed '30,40 s/version/story/g' myfile.txt
  1. i 忽略大小写替换 sed 's/version/story/gi' myfile.txt

直接修改文件内容


sed -i 's/src/dst/g' filename

例子:将文档的每一句的最后的 . 改为 !

如果转载请在下面留言, 尊重别人的劳动成果!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏JMCui

Linux 学习记录 四(Bash 和 Shell scirpt).

一、什么是 Shell?        狭义的shell指的是指令列方面的软件,包括基本的Linux操作窗口Bash等,广义的shell则包括 图形接口的软件,...

42140
来自专栏Java成长之路

深入理解多线程

多线程是java中比较重要的一部分内容,使用多线程有许多的优点: - 提高应用程序的响应。对图形化界面更有意义,可增强用户体验。 - 程序需要实现一些需...

21230
来自专栏coding

实例详解linux文本三剑客--sed

20210
来自专栏青玉伏案

设计模式(五): 简单而又不失其重要性的单例模式(Singleton Pattern)

上篇博客我们系统的介绍了三种工厂模式,今天我们就来介绍一下单例模式。单例模式虽然简单,但是还是比较重要的,是常用设计模式之一。在之前的博客《Objective-...

20950
来自专栏流柯技术学院

Loadrunner中web_find和web_reg_find函数的使用与区别

总结一下Loadrunner中的检查点函数,主要介绍两个函数:web_find()和web_reg_find();这两个函数均用于内容的查找,但两者也有本质的区...

22320
来自专栏AI深度学习求索

AI实践:如何应用多进程Multiprocessing编程?

多核 multiprocessing:现在计算机都有多核处理器,将任务分给多个核来处理,他们有单独的运算空间和计算能力,避免了多线程的劣势。

13120
来自专栏同步博客

Smarty的基本使用与总结

含义:Smarty是PHP的一个引擎模板,可以更好的进行逻辑与显示的分离,即我们常说的MVC,这个引擎的作用就是将C分离出来。

9830
来自专栏JetpropelledSnake

Python之os.path路径模块中的操作方法总结

#os.path模块主要集成了针对路径文件夹的操作功能,这里我们就来看一下Python中的os.path路径模块中的操作方法总结,需要的朋友可以参考下 解析路径...

341110
来自专栏C/C++基础

Linux命令(7)——uniq命令

用于去除有序文件中的重复行并将结果输出到标准输出。uniq经常和sort合用,为了使uniq起作用,所有的重复行必须是相邻的。

9220
来自专栏Pythonista

python全栈考试

a.实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败!

22520

扫码关注云+社区

领取腾讯云代金券