Как запустить дочерние процессы терминала gnome в терминале difnet - PullRequest
0 голосов
/ 17 ноября 2011

Я пишу скрипт оболочки.Я хочу, чтобы три скрипта запускались в другом терминале.Я написал так в сценарии оболочки,

gnome-terminal -x 1.sh

gnome-terminal -x 2.sh

gnome-terminal -x 3.sh

Затем родительский терминал ожидает завершения выполненияgnome-terminal -x 1.sh.Он не будет переходить к следующему сценарию при первом запуске сценария.Если я запускаю эти 3 сценария в качестве фонового процесса, они запускаются в 3 разных окнах терминала, но я не могу убить эти 3 процесса.

Я должен вручную найти там идентификаторы процессов и уничтожить их.Я не хочу этого делать.Есть ли лучший способ сделать это?

1 Ответ

1 голос
/ 17 ноября 2011

Вы можете получить их идентификатор процесса из командной строки, которая их запустила:

gnome-terminal -x 1.sh & pid1=$!
gnome-terminal -x 2.sh & pid2=$!
gnome-terminal -x 2.sh & pid3=$!
...