在測試環境定位問題時,如果發現日志文件內容太多或太大,有時需要刪除該日志,如Tomcat,Nginx日志。以前每次都是先rm -rf ***.log,然后重啟應用。直到后來發現了以下命令,原來可以不用重啟應用直接清空日志。
權限要求: 至少執行用戶對該文件有寫的權限
--w------- 1 QA_Deploy QA_Deploy 1 Jun 27 17:35 test.out
$ : > filename
$ > filename
$ echo "" > filename
$ echo > filename
個人推薦最簡單的方式,直接 > filename.
執行操作后,細心操作可以發現文件大小是不一樣的。
1和2 兩種方式,是0kb
3和4 兩種方式,是1kb
還有一種方式為:cat /dev/null > file.log
這條命令的意思是:清空messages文件。
可以把/dev/null看作"黑洞". 它非常等價於一個只寫文件. 所有寫入它的內容都會永遠丟失. 而嘗試從它那兒讀取內容則什么也讀不到.
因此, /dev/null 對命令行和腳本都非常的有用.
以上共計5種方式,僅供學習參考!