背景工作模式(&)
unix的使用者對背景工作模式符號(&),相信大家一定不會陌生.

簡單的說明:
當輸入指令之後,為了能讓 terminal 還可以繼續輸入其他的指令,
而不會佔據目前的工作視窗,我們在指令的後面加入& 符號即可.
$ command &

若執行指令時忘記加入& ,此時目前的 terminal會被執行的指令佔據視窗,
而無法再輸入其他的指令,這時候我們只要按下 Ctr+z ,
就可以將 terminal 返回到指令輸入的模式下,
接下來再使用 jobs 指令來顯示背景工作數,
最後使用 bg 指令,將command 改到背景模式下工作.
$ command
^Z
Suspended
$ jobs
[1] + Running command
$ bg 1


nohup - run a command immune to hangups
當遠端登入連線網路中斷時,或需要logout之後,
process仍然能繼續在背景模式下工作的指令.

下列以一個 run calibre lvs 的例子來描述說明:
$ more lvs.sh
#!/bin/sh
calibre -lvs lvs.rul -hier -spice layout.spi | tee error.log &

使用 nohup 指令來 run calibre lvs
$ nohup lvs.sh &

此時您已經可以放心的登出系統,
因為 nohup 會讓你的 lvs.sh 繼續工作,
而不會因為登出系統或網路斷線而中斷執行.
arrow
arrow
    全站熱搜

    噗噗噗的潛水珽 發表在 痞客邦 留言(0) 人氣()