2012-03-28 35 views
4

我正在衝着一個編程任務的時鐘,我必須同時在同一臺機器上運行同一個程序的多個實例。 目前,我一次啓動一個實例,按Ctrl + z暫停它們,然後執行'bg%#'以在後臺恢復執行。BASH:發送SIGTSTP信號(ctrl + z)

每次我需要在應用程序中測試一個小小的更改時,這是非常單調乏味的,所以我想編寫一個bash腳本來爲我啓動多個實例,但是我不知道在腳本中進行背景切換。

任何人都可以請我告訴我如何編寫一個簡單的腳本來啓動一個長期的命令,暫停它,並在後臺恢復它?

謝謝

+0

什麼的原因讓它在後臺運行之前暫停命令? – 2013-11-27 10:10:10

回答

12

你只想開始它的背景是什麼?例如:

mycommand & 

如果你想更細緻的作業控制,你可以模擬按Ctrl - žbg控制 - ž發送SIGTSTP( 「TTY停止」)的計劃,該計劃暫停它:

kill -TSTP [processid] 

而且bg命令只是將它SIGCONT

kill -CONT [processid] 
+0

是的!完全滿足我的需求!感謝您的答案...我必須去學習如何流利BASH這些日子之一:) – noobler 2012-03-28 04:16:45

3

你沒有。你在命令後加一個&符號。

command1 & 
command2 & 
command3 & 
+0

如果任何命令需要用戶交互,這不是一個解決方案。 – 2012-12-04 02:14:11