linux清空日誌檔案內容 比如log日誌
在測試環境定位問題時,如果發現日誌檔案內容太多或太大,有時需要刪除該日誌,如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 對命令列和指令碼都非常的有用.
在測試環境定位問題時,如果發現日誌檔案內容太多或太大,有時需要刪除該日誌,如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 對命令列和指令碼都非常的有用.