ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

sed常用命令

2022-02-14 23:31:10  阅读:208  来源: 互联网

标签:cili person sed kiki 常用命令 txt localhost


sed 命令

对于配置文件, 使用sed命令,不仅更加快捷,而且便于脚本中, 自动化操作

选项

-i 直接修改文件内容,而不是输出到终端
-n 取消默认的输出和 p 常搭配使用
-e 执行多条操作

内置命令字符
a 全拼 append 
d 全拼 delete
i 全拼 insert
p 全拼 print
s 全拼substitute 替换

测试文件

cat >person.txt<<EOF
andy
bob
cili
haha
kiki
EOF
sed -f test.sed test.txt
sed -i.bak 's#bob#bobi#g' person.txt #修改并备份

查询元素

#输出第一行的内容
[root@localhost ~]# sed -n '1p' person.txt
andy

#查看cili 到kiki
[root@localhost ~]# sed -n '/cili/,/kiki/p' person.txt
cili
haha
kiki

#查看第一行和第三行
[root@localhost ~]# sed -n '1p;3p' person.txt
andy
cili

#查看cili 和kiki
[root@localhost ~]# sed -n '/cili/p;/kiki/p' person.txt
cili
kiki
#查看多个不连续的元素
[root@localhost ~]# sed -nr '/andy|cili|kiki/p' person.txt 
andy
cili
kiki

增加元素

#在尾行添加
[root@localhost ~]# sed '$aadu\nbule' person.txt
andy
bobi
cili
haha
kiki
adu
bule

#在第2行添加
[root@localhost ~]# sed '2ablue' person.txt
andy
bobi
blue
cili
haha
kiki


#在andy后添加blue和hoho
[root@localhost ~]# sed '/andy/abule\nhoho' person.txt
andy
bule
hoho
bobi
cili
haha
kiki

删除元素

# 删除第一行
[root@localhost ~]# sed '1d' person.txt
bobi
cili
haha
kiki

# 删除cili
[root@localhost ~]# sed '/cili/d' person.txt
andy
bobi
haha
kiki

# 删除1至3行
[root@localhost ~]# sed '1,3d' person.txt
haha
kiki

# 删除1行和第3行
[root@localhost ~]# sed '1d;3d' person.txt
bobi
haha
kiki

# 删除andy
[root@localhost ~]# sed '/andy/d' person.txt
bobi
cili
haha
kiki

替换元素

sed '2s/dog/cat/g' data.txt #如果没有/g 则只将每一行的第一个dog 替换成cat(行内全局)

sed'2,3s/dog/cat/' data.txt

[root@localhost~]# sed  '2,$s/dog/cat/' data.txt 

dog
cat
cat
cat
cat
#  $表示到最后一行

[root@localhost~]# sed '/hellodog/s/dog/cat/' data.txt 

dog
dog
dog
hellocat
dog

标签:cili,person,sed,kiki,常用命令,txt,localhost
来源: https://www.cnblogs.com/joeHelloWorld/p/15894674.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有