Linux

無法從後台 java 作業中獲取 PID

  • June 29, 2016

此語句的 PID 文件已創建,但始終為空。使用 -x 執行 shell 時,我看到 $! 為空,但最後 java 作業仍根據需要在後台執行。為什麼pid不見了?

su - $USER -c "nohup java $rest_api_opts -jar $app_home/$app_name \
  > /dev/null 2>&1& echo $! > $PID"

固定的。麻煩的是$!擴展得太早了。所以逃避它延遲了擴張

su - $USER -c "nohup java $rest_api_opts -jar $app_home/$app_name \
  > /dev/null 2>&1& echo \$! > $PID"

引用自:https://serverfault.com/questions/786997