Linux下如何高效删除一个几十G的文本文件的最后一行或几行


当我们在服务器端记录日志或文本数据时,有时候会有需要删除一个大文件的最后几行,这时如何才能高效实现。

上网浏览终于找到dd命令,亲测如下,删除一个32GB的日志文件最后100行仅需要4分钟


[root@game1_10 tmp]# dd of=sqq_jobs_run.log.bak seek=1 bs=$(($(stat -c%s sqq_jobs_run.log.bak)-$(tail -1 sqq_jobs_run.log.bak|wc -c)))

sqq_jobs_run.log.bak要操作的大文件, tail -n  #n代表要删掉最后的几行, 这里是删掉最后一行。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM