linux sed命令
1. sed命令的作用
1. 简介
sed是一种新型的,非交互式的编辑器。
sed编辑器不会修改文件,除非使用shell重定向保存输出结果,默认把所有的输出航都打印到屏幕上。
2. 工作过程
sed逐行处理文件,并将结果输出到屏幕。它把逐行处理的内容放到一个临时缓存区中,处理完以后发送到屏幕上。sed执行完最后一行,就结束了。

2. sed命令的语法
sed [选项] 'command' 输入文本
1. sed定位


2. sed的常用选项

3. sed操作命令

3. sed实战
1. 替换每一行的第一个a字符为1
sed -n 's#a#1#p' test.txt -n和p需要同时出现,否则就没什么作用
2. 替换所有a字符为1
sed -n 's#a#1#gp' test.txt 需要添加全局设置g
3. 删除某一行
sed '1d' test.txt 删除第一行
如果想写入到文件中,sed -i '1d' test.txt
4. 删除2行到5行之间
sed -i '2,5d' test.txt
5. 删除2行到尾行之间
sed -i '2,$d' test.txt
6. 删除文件最后一行
sed -i '$d' test.txt
7. 也可以利用正则进行删除行
sed -i '/^o/d' test.txt 发现使用##有问题啊,不能删除
8. 删除空行
sed -i '/^$/d' test.txt
9. 追加
sed -i '$a\wangyanhe' test.txt 在尾行追加内容
sed -i '2a\gushuwei' test.txt 在第二行之后追加内容
10. 在某一行最前面加#
sudo sed -i "2s/^/#/" main.yml
11. 在某一行最前面去掉#
sudo sed -i "2s/^#//" main.yml
12. 在某一行插入内容
sudo sed -i "2a\内容" main.yml
13. 替换多个字符串
sudo sed -i 's#orderId=##g;s#productSpecId=##g;s#avgWeightedTaxPrice=##g' /tmp/yangjianbo-new46oms$i.txt

浙公网安备 33010602011771号