java -jar XXX.jar &
命令結尾沒有 「&」 ,則變成 「java -jar XXX.jar 」 ,表示在當前ssh窗口,可按CTRL + C打斷程序運行,或者直接關閉窗口,則程序直接退出
命令結尾添加 「&」 ,則變成 「java -jar XXX.jar &」 ,表示在當窗口關閉時,程序纔會停止運行。&表明讓該命令在後臺執行。
nohup java -jar XXX.jar > Log.log &
或者
nohup java -jar XXX.jar >> Log.log &
命令 "nohup java -jar XXX.jar &" 部分,表示不掛斷運行命令,當帳戶退出或終端關閉時,程序仍然運行。注意,該做業的全部輸出被重定向到nohup.out的文件中。
命令 "nohup java -jar XXX.jar > Log.log &" 部分,表示不掛斷運行命令,當帳戶退出或終端關閉時,程序仍然運行,而且該做業的全部輸出被重定向到Log.log的文件中。「 > Log.log 」 該命令就是指定日誌輸出的文件。
">>"表示將輸出以追加的方式重定向到Log.log中。
nohup java -jar XXX.jar > Log.log 2>&1 &
或者
nohup java -jar XXX.jar >> Log.log 2>&1 &
或者
nohup java -jar XXX.jar > /dev/null 2>&1 &
標準輸入文件(stdin):stdin的文件描述符爲0,Unix程序默認從stdin讀取數據。
標準輸出文件(stdout):stdout 的文件描述符爲1,Unix程序默認向stdout輸出數據。
標準錯誤文件(stderr):stderr的文件描述符爲2,Unix程序會向stderr流中寫入錯誤信息。
屏蔽輸出,起到禁止輸出做用:/dev/null 是一個特殊的文件,寫入到它的內容都會被丟棄;若是嘗試從該文件讀取內容,那麼什麼也讀不到。可是 /dev/null 文件很是有用,將命令的輸出重定向到它,會起到"禁止輸出"的效果。
「> Log.log 2>&1」 :表示將 stdout 和 stderr 合併後重定向到 Log.log
備註:輸出以後,能夠使用「jobs」查看一下後臺運行的任務。
java