Linux
如何殺死作為守護程序啟動的程序?
我使用
foo &
.它輸出如下內容:
[1] 16915
我猜這是程序ID。如何將此數字儲存到名為
MY_PROCESS_ID
(例如)的變數中?然後我可以這樣做:
kill $MY_PROCESS_ID
我的程序ID將被殺死。
foo & bg_pid=$! kill "$bg_pid"
您還可以將 shell 的內部
kill
命令與(至少在 的情況下bash
)作業編號一起使用:foo & kill %1
但這可能並不容易。互動可能更容易。但隨著
kill %+
或者
kill %
你總是得到最後一個。您甚至可以通過部分命令行確定要終止的作業。見
man bash
; 搜尋塊JOB CONTROL
。
$!
如果最後一個程序在後台啟動,則該變數是 PID。你會這樣做:foo & my_process_id=$! : other stuff ... kill "$my_process_id"