我想在後臺運行我的腳本,然後編寫它的pid文件。我正在使用nohup來做到這一點。如何在單個bash語句中運行nohup並將其pid文件寫入
這就是我想出了,
nohup ./myprogram.sh > /dev/null 2>&1 & && echo $! > run.pid
但是,這給出了一個語法錯誤。
以下不會給出語法錯誤,但問題是echo $!因爲nohup的是一個子殼
(nohup ./myprogram.sh > /dev/null 2>&1 &) && echo $! > run.pid
此解決方案的任何運行不寫正確的PID,給我要爲實現這一一行語句?
的'&'是一個命令終止,很像';'或'\ N'。這就是爲什麼'&&&'是一個語法錯誤。 – joeytwiddle
我試過了,但它給了我錯誤的PID。我不知道我做錯了什麼? –