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