shell脚本-sed简单使用

p: 打印
d: 删除
s: 查找替换
c: 更改
y: 转换 N D P

1. sed 'a\hello word' data  //在每一行末尾添加hello world
2. sed '3a\hello word' data //在第三行末尾添加hello world
3. sed '2,4a\hello word' data //在第2行到第4行末尾添加hello world
4. sed '/3.the/a\hellowolrd' data  //匹配模式   以3.the开头的一行, 然后在末尾添加helloworld
5. sed 'i\hello world' data //在每一行开头插入helloworld
6. sed '/3.the/i\helloworld' data //开启匹配模式, 然后在开头插入helloworld
7. sed '/3.the/d\helloworld' data //开启匹配模式, 然后删除对应的行
8. Sed 'd' data   //删除所有
9. sed -r '/(^#|#|^$)/d' nginx.conf  //删除以#开头  或者包含#  或者是空格 的行
10.sed 's/dog/cat/' data  //用cat替换所有的dog
11.sed '3s/dog/cat/' data  //用cat替换第三行的dog
12.sed '/3.the/s/dog/cat/' data //用cat替换以3.the开头的行中的dog
13.sed 'c\helloworld' data  //用helloworld替换每一行的内容
14.sed '2,4c\helloworld' data //删除第2行到第4行,添加一行helloworld
15.sed 'y/abcde/ABCDE/' data  //转换
16.sed 'p' data //打印每一样两遍
17.sed '2p' data  //打印2行两遍  其他行打印一遍
-e: 同时执行多条命令
-f: 执行命令的文件  将多条命令放在一个文件中, 使用-f执行
-n: 抑制自动输出, 修改哪里打印哪里
-i: 编辑文件尼内容
-i.bak: 修改时同时创建.bak备份文件
-r: 使用扩展的正则表达式
!: 取反 (跟在模式条件后与shell有所不同)

18.sed '3s/dog/cat/w mfile' data //用cat替换第三行中的dog, 并保存在mfile文件中
19.sed -n '3s/dog/cat/p' data  //英yongcat替换第三行中的dog, 并且打印, 只打印修改的行
20.sed -i 's/dog/cat/' data //修改源文件中的dog用cat替换
21.sed -i.bak 's/cat/dog/' data  //备份源文件, 再修改源文件

猜你喜欢

转载自blog.csdn.net/Batac_Lee/article/details/109728706