2014-03-26 255 views
1

我試圖寫我自己的shell腳本。到目前爲止,我已經設法打開4個終端,只能執行一個命令,因爲有'hold'選項。bash - Shell腳本打開多個終端並執行不同的命令

如果我不使用這個選項,終端會消失。

這裏是我的代碼:

#!/bin/sh 
xterm -title "App 1" -hold -e mycommand | mysecondcommand & 
xterm -title "App 2" -hold -e mycommand | mysecondcommand & 
xterm -title "App 3" -hold -e mycommand | mysecondcommand & 
xterm -title "App 4" -hold -e mycommand | mysecondcommand 

不是很確定,如果我應該在同一個終端這種方式來執行第二個命令。

任何想法?

謝謝

+1

什麼是你想運行的命令?你應該能夠通過使用'-e'command1; command2; command3&''等來執行多個命令。也許考慮將這些命令分批處理到另一個腳本中並調用它? –

+0

首先我需要cd到另一個目錄,然後執行一個程序 但是,仍然存在的主要問題是-hold選項:/ – itachi42

+0

如果您嘗試:'xterm -title「App 1」-e「cd/my/dir && mycommand「'? –

回答

3

沒有-hold,但該命令完成的xterm將立即關閉。您可以通過使用雙引號和命令分隔符(如;&)執行多個命令:

xterm -title "App 1" -e "mycommand; mysecondcommand" 
+0

謝謝,解決了! – itachi42

+0

你會如何使用'gnome-terminal'來做這件事? – gone

+0

@gone你必須用'gnome-terminal'替換'xterm'並刪除選項('-title'和'--hold')。請參閱gnome-terminal手冊頁('man gnome-terminal')以獲取更多選項。 – trueter

相關問題