加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

shell sed 的一些用法

发布时间:2020-12-15 16:26:09 所属栏目:安全 来源:网络整理
导读:#1、替换 #将1.txt文件中的2017替换成2016显示在屏幕上 sed"s/2017/2016/g"1.txt #将1.txt文件中的2017替换成2016显示在屏幕上对文件彻底修改,加 i 修改进文件 sed-i"s/2017/2016/g"1.txt #Sed读取系统变量,变量替换 DATE="2016"sed"s/2017/$DATE/g"1.txt

#1、替换

#将1.txt文件中的2017替换成2016显示在屏幕上

sed"s/2017/2016/g"1.txt

#将1.txt文件中的2017替换成2016显示在屏幕上对文件彻底修改,加 i 修改进文件

sed-i"s/2017/2016/g"1.txt

#Sed读取系统变量,变量替换

DATE="2016"
sed"s/2017/$DATE/g"1.txt

#关闭SELinux,修改SELinux策略enforcing为disabled,查找SELINUX行,然后将其行enforcing值改成disabled、!s表示不包括SELINUX行:

sed-i"/SELINUX/s/enforcing/disabled/g"/etc/selinux/config
sed-i"/SELINUX/!s/enforcing/disabled/g"/etc/selinux/config


#2、打印

#打印1.txt文本第一行至第三行

sed-n"1,3p"1.txt

#3打印1.txt文本中第一行与最后一行

sed-n"1p,$p"1.txt


#3、删除

#删除第一行至第三行

sed'1,3d'1.txt

#删除匹配行至最后一行

sed'/2017/,$d'1.txt

#删除最后一行

sed'$d'1.txt

#删除最后6行(做6次删除最后一行)

foriin{1..6};dosed-i'$d'1.txt;done

#删除1.txt行前和行尾的任意空格:

sed's/^[t]*//;s/[t]*$//'1.txt

#删除所有空格

sed's/[t]//g'1.txt


#4、添加字符

#在1.txt查找you所在行,并在其下一行添加me字符,a表示在其下一行添加字符串:

sed'/you/ame'1.txt

#在1.txt查找you所在行,并在其上一行添加me字符,i表示在其上一行添加字符串:

sed'/you/ime'1.txt

#在1.txt查找以you结尾的行尾添加字符串me,$表示结尾标识,&在Sed中表示添加:

sed's/you$/&me/g'1.txt

#在1.txt查找you的行,在其行首添加字符串me,^表示起始标识,&在Sed中表示添加:

sed'/you/s/^/&me/'1.txt


#5、多个sed命令组合

#使用-e参数

sed-e'/www.jd.com/s/^/&1./'-e's/www.jd.com$/&./g'1.txt

#使用分号";"分割

sed-e'/www.jd.com/s/^/&1./;s/www.jd.com$/&./g'1.txt


#6、插入空行

#每一行后边插入一行空行

sed'/^$/d;G'1.txt
sed'G'1.txt

#每一行后边插入两行空行

sed'/^$/d;G;G'1.txt
sed'G;G'1.txt

#前三行每行后插入空行

sed'/^$/d;1,3G;'1.txt

#第三行后插入空行

sed'/^$/d;3G;'1.txt

#第三行后插入3行空行

sed'/^$/d;3{G;G;G}'1.txt

#匹配行后插入空行

sed'/2017/G'1.txt

#在匹配行前一行插入空行

sed'/2017/{x;p;x;}'1.txt

#同时在匹配前后插入空行

sed'/2017/{x;p;x;G;}'1.txt


#7、在1.txt每行前加入顺序数字序号、加上制表符t及.符号:

sed=1.txt|sed'N;s/n//'
sed=1.txt|sed'N;s/n/t/'
sed=1.txt|sed'N;s/n/./'


#8、打印及删除1.txt最后两行:

sed'$!N;$!D'1.txt
sed'N;$!P;$!D;$d'1.txt


#9、合并上下两行,也即两行合并:

sed'$!N;s/n//'1.txt
sed'N;s/n//'1.txt

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读