之前一直在訓練漢字識別,和交大夥伴合作,用了他的服務器
命令:
nohup python train.py &
彈出了 [1] 4367
[1] 是任務編號,就是jobsnumber
4367 是進程號,pid
還會有輸出一行 appendding output to 'nohub.out' 就是會把一些print打印出來的信息寫入到'nohub.out'這個文件
最後你回車就行,此時程序已經在後臺運行了
輸入:
ps -ef | grep 4367
就能看到你剛運行的程序,即時是退出終端後,下次再進也依然在
ps -A
列出所有的進程
殺死進程命令,比如把剛那個後臺程序終止:
kill 4367
4.補充幾個相關指令:
**
引用自
fg、bg、jobs、&、nohup、ctrl + z命令
jobs
1
前有多少在後臺運行的命令
jobs -l選項可顯示所有任務的PID,jobs的狀態可以是running, stopped, Terminated,但是如果任務被終止了(kill),shell 從當前的shell環境已知的列表中刪除任務的進程標識;也就是說,jobs命令顯示的是當前shell環境中所起的後臺正在運行或者被掛起的任務信息;
fg
1
將後臺中的命令調至前臺繼續運行
如果後臺中有多個命令,可以用fg %jobnumber將選中的命令調出,%jobnumber是通過jobs命令查到的後臺正在執行的命令的序號(不是pid)
bg
1
將一個在後臺暫停的命令,變成繼續執行 (在後臺執行)
如果後臺中有多個命令,可以用bg %jobnumber將選中的命令調出,%jobnumber是通過jobs命令查到的後臺正在執行的命令的序號(不是pid)
將任務轉移到後臺運行:
先ctrl + z;再bg %jobnumber,這樣進程就被移到後臺運行,終端還能繼續接受命令。注意後臺變前臺,直接fg%jobnumber
前臺變後臺,先ctrl + z,再bg %jobnumber
概念:當前任務
如果後臺的任務號有2個,[1],[2];如果當第一個後臺任務順利執行完畢,第二個後臺任務還在執行中時,當前任務便會自動變成後臺任務號碼“[2]” 的後臺任務。所以可以得出一點,即當前任務是會變動的。當用戶輸入“fg”、“bg”和“stop”等命令時,如果不加任何引號,則所變動的均是當前任務
這篇文章寫的也挺詳細的