欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

linux 删除文件最后几行 有大用 有大大用

sed 删除最后几行

 我来答  举报
xiehuahere
推荐于2017-11-26

比如,删除最后三行

1
2
3
4
5
myfile=a.txt
num=3 #要删除的行数 
max=`sed -n '$=' $myfile` #文件总行数
let sLine=max-num+1 #删除的起始行 
sed -i $sLine',$d' $myfile #从起始行删除到最后行

来自   https://zhidao.baidu.com/question/1883019052447899188.html



1.
[root@server ~]# cat aa.txt
aaaa
bbbb
cccc
dddd
eeee


[root@server ~]# A=$(sed -n '$=' a.txt) [root@server ~]# sed $(($ A-3+1)),${A}d a.txt


[root@server ~]# cat aa.txt

aaaa


或者使用上面两条命令。删除的是倒数3行的。

如果删除倒数300 ,那就把3改为300 就可以了。


2.

-i 是要在原文件上修改。如果不需要修改,就不用i 了。


其中 ,sed '2,$d' -i aa.txt

这条命令是 删除从第2行(包括第2行)到文件末尾的所有行。


注:

命令一操作的是原文件,结果到处到新产生的文件或打印到屏幕;

命令二是直接操作原文件,结果原文件发生了改变,产生了命令结果。

————————————————


来自  https://blog.csdn.net/weixin_44839345/article/details/90792660


普通分类: