【Linux】sed工具的使用
【摘要】
文章目录
前言1. sed用法2. 注意点
前言
在有一定的正则基础应用后,我们可以来玩玩sed的使用。sed本身是一个管线命令,可以分析standard input的,而且sed也是...
前言
在有一定的正则基础应用后,我们可以来玩玩sed的使用。sed本身是一个管线命令,可以分析standard input的,而且sed也是可以将数据进行取代,删除,新增,截取功能,我们先了解一个,然后在聊他的用法
1. sed用法
参数
a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正则表达式!
例如 1,20s/old/new/g 就是啦!
- 将etc/passwd的内容列出来并且打印行号。同时删除2~5行
nl /etc/passwd | sed ‘2,5d’;
- 将/etc/passwd/ 删除第2行
nl /etc/passwd | sed ‘2d’;
- 删除/etc/passwd 从第3行到最后一行
nl /etc/passwd | sed ‘3,$d’;
- 在/etc/passwd的第二行后加上“我是咔咔”字样
nl /etc/passwd | sed ‘2a 我是咔咔’;
参数a是指目前行的下一行,也就2的下一行3,所以会出现在第三行
- 在第二行后加上“我是咔咔”与“我是咔咔2”字样,分为俩行显示
nl 1 | sed ‘2a 我是咔咔\nihao’;
- 查看一个文件的5到7行
nl 1 | sed -n ‘2,5p’;
- 修改文件的内容(不是真的修改)
- 直接修改文件内容(危险操作)
加入的你的文件特别的大,使用vim打开的话那是很伤的,那么我们就可以使用sed来操作
- 在2行后边新增
- 把3到6行的数据直接取代了
sed -i ‘3,6c 这是把3到6行的数据给取代的’ 1;
- 把文章的456换成789然后进行修改
2. 注意点
上边的所有的操作,只要在sed 后边跟哥 -i 那么所有的操作都会是真实的写入,而非直观的查看而已。所以-i这个参数在不了解的时候请慎用
文章来源: blog.csdn.net,作者:咔咔-,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/fangkang7/article/details/100185939
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)