sed -i命令详解 转

sed -i命令详解

[[email protected] ~]# sed [-nefr] [动作]
选项与参数:
-n :使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到终端上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。
-e :直接在命令列模式上进行 sed 的动作编辑;
-f :直接将 sed 的动作写在一个文件内, -f filename 则可以运行 filename 内的 sed 动作;
-r :sed 的动作支持的是延伸型正规表示法的语法。(默认是基础正规表示法语法)
-i :直接修改读取的文件内容,而不是输出到终端。

动作说明: [n1[,n2]]function
n1, n2 :不见得会存在,一般代表『选择进行动作的行数』,举例来说,如果我的动作是需要在 10 到 20 行之间进行的,则『 10,20[动作行为] 』

function:
a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
p :列印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!

sed -i 就是直接对文本文件进行操作的

sed -i ‘s/原字符串/新字符串/‘ /home/1.txt
sed -i ‘s/原字符串/新字符串/g‘ /home/1.txt

这两条命令的区别就是,看示例吧

这是1.txt的内容

#cat 1.txt
d
ddd
#ff

再看执行这两条命令的区别吧

sed -i ‘s/d/7523/‘ /home/1.txt
执行结果
7523
7523dd
#ff

sed -i ‘s/d/7523/g‘ /home/1.txt
执行结果
7523
752375237523
#ff

去掉 “行首” 带“@”的首字母@

sed -i ‘s/^@//‘ file

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

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

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

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

特定字符串的删除

sed -i ‘/字符串/d‘ file

sed -i "s\\"""\\\\g" tmp

原文地址:https://www.cnblogs.com/gisalameda/p/11516658.html

时间: 2024-12-13 22:30:07

sed -i命令详解 转的相关文章

sed -i命令详解

[[email protected] ~]# sed [-nefr] [动作] 选项与参数: -n :使用安静(silent)模式.在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到终端上.但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来. -e :直接在命令列模式上进行 sed 的动作编辑: -f :直接将 sed 的动作写在一个文件内, -f filename 则可以运行 filename 内的 sed 动作: -r :sed 的动作支

2.2 linux sed命令详解

简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕.接着处理下一行,这样不断重复,直到文件末尾.文件内容并没有 改变,除非你使用重定向存储输出.Sed主要用来自动编辑一个或多个文件:简化对文件的反复操作:编写转换程序等. sed使用参数 [[email protected] ~]# sed [-nefr] [动作] 选项与参数

linux 之sed命令详解

sed命令详解 sed是什么 sed是linux文本处理三剑客之一,全称 StreamEDitor,非常著名的行编辑器,功能十分强大. sed的工作过程 sed处理文本时每次从文件复制出来一行,放在工作车间,又叫做模式空间,即pattern space,然后与模式进行匹配.如果复制出来的这一行不能被模式匹配到,就默认把这一行输出至标准输出(如果用户明确指定不输出也可以). 如果能被模式匹配到,就对这行数据进行用户指定的编辑操作,编辑完成后可能输出至标准输出,也可能是用户指定的其他操作.这样第一行

文本处理工具之二 sed命令详解

======博主所学知识来着于恩师马哥的亲授====== 马哥教育"2014夏令营"开始啦!!!马哥教育是目前性价比最高的Linux培训,国内好评度排名第一,并被网友称为Linux界的"黄埔军校",全部课程采用Centos6.5x86_64讲解,经过几期网络班的总结和锤炼,逐渐完善的课程体系,学员学习进度监督和优质的考试系统检验学员掌握程度,活跃的在线答疑环节,名师陪伴,牛人指点,精彩不容错过. 详情猛戳:http://www.magedu.com/ 课程内容:ht

cut\grep\awk\sed命令详解

cut\grep\awk\sed命令详解 1.cut命令详解及实例 (1)作用:提取文件中指定的列 语法格式:cut  选项  文件名   (2)选项作用:      -d 分隔符     按照指定的分割符进行分割      -f 列号       指定提取第几列      -c 字符范围  不依赖分割符来分割,而是通过字符范围进行字段提取      -b 字节数     以字节为单位进行分割.    (3)cut实际应用案例. 例1:cut的-d和-f选项的使用,列出/etc/passwd里面

grep、awk、sed命令详解2

grep.awk.sed命令详解 上一篇对grep.awk.sed命令的基本参数做了介绍,这一篇写一些例子. 1.分析access.log日志内,当天访问次数最多的10个页面,并且按降序排列. # cat access.log|awk -F ' ' '{print $7}'|sort|uniq -c|sort -nr|head -10 2.获取访问最高的10个IP地址. # cat access.log|awk -F ' ' '{print $1}'|sort|uniq -c|sort -nr|

文件管理命令详解

Linux03 Linux03_01?文件管理命令详解 作业1: 1.创建目录/backup # mkdir -v /backup 2.复制目录/etc至/backup目录中,并重命名为"etc-当前日期",如etc-2013-02-26:要求保留文件原来的属性,保持链接文件: cp -r -p -d # cp -a /etc /backup/etc-2013-02-28 命令替换 3.复制文件/etc/inittab为/tmp/inittab.new,并删除inittab.new文件

Linux awk 命令详解

简介linux awk命令详解 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理. awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本. awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的

linux sed,awk详解

sed命令:sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕.接着处理下一行,这样不断重复,直到文件末尾.文件内容并没有 改变,除非你使用重定向存储输出.Sed主要用来自动编辑一个或多个文件:简化对文件的反复操作:编写转换程序等.sed使用参数[[email protected] ~]# sed [-nefr] [动作]-n :使