sed巧用,随手记

时间:2023-12-16 20:24:02

删除文件后几行,或者前几行

方法1
都当做最后一行,来删除
 for((i=1;i<4;i++)); do sed -i '$d' seq01.txt ; done 
方法二
倒过来看
cat
tac 1.txt|sed -i '1,4d'
最好的方法
 删除文件中的最后10行 (不过看不懂)
  sed -e :a -e '$d;N;2,10ba' -e 'P;D' 1.txt  # 方法1 
  sed -n -e :a -e '1,10!{P;N;D;};N;ba' 1.txt  # 方法2

sed 在某行之后插入

例如: 
[root@localhost 10]# cat file
1
2
3
4
5                               3.

[root@localhost 10]# sed "3 a aaa" file

1
2
3

aaa

4
5                                    3.
sed -i "3 a aaa" file

3是第三行
a是插入在第三行后,第三行前就用i
aaa是要插入的内容