解決方法:
參考:https://www.jianshu.com/p/d0f55a25486b
1.手動輸入命令,保留nohup.out文件多少行
例如保留10000行,可如下操作:
log=`tail -n 10000 nohup.out`; echo "$log" > nohup.out
2.寫定時任務,定時清理nohup.out文件
其他處理辦法:
1. 關閉當前的服務,rm -rf 直接刪掉,啟動服務。
2. echo ‘’ > nohup.out 清空文件內容。這個不需要關閉服務,但是如果項目多,nohup.out 文件多 ,不好定位。
3. nohup java -jar /usr/local/jar/test.jar > /var/log/nohup.log & 全部指定到一個文件!
4. 每個項目都是有log的,所以這個啟動日志就不需要看。
nohup java -jar /usr/local/jar/test.jar > /dev/null 2>&1 &
直接指定到黑洞目錄,在本地也不會保留。
關於/dev/null文件
Linux下有一個特殊的文件/dev/null,它就像一個無底洞,所有重定向到它的信息都會消失得無影無蹤。這一點非常有用,當我們不需要回顯程序的所有信息時,就可以將輸出重定向到/dev/null。
Linux下有一個特殊的文件/dev/null,它就像一個無底洞,所有重定向到它的信息都會消失得無影無蹤。這一點非常有用,當我們不需要回顯程序的所有信息時,就可以將輸出重定向到/dev/null。
nohup命令:
參考:https://www.runoob.com/linux/linux-comm-nohup.html
語法格式
nohup Command [ Arg … ] [ & ]
Command:要執行的命令。
Arg:一些參數,可以指定輸出文件。
&:讓命令在后台執行,終端退出后命令仍舊執行。
以下命令在后台執行 root 目錄下的 runoob.sh 腳本,注意末尾的&,&:讓命令在后台執行,終端退出后命令仍舊執行。
nohup /root/runoob.sh &