Скрипт Bash, который запускает команды в двух сеансах терминала / ssh - PullRequest
0 голосов
/ 07 ноября 2019

Я пытаюсь автоматизировать настройку и настройку бродячего процесса с помощью bash-скрипта.

Дело в том, что мне нужно дважды войти в мою бродячую машину, и я хочу, чтобы при этом оба терминала были видны на моем экране.

Процесс такой ...

В терминале 1:

vagrant up
vagrant ssh myhost
wait
cd /my/directory/
... do some commands...

Затем я хочу, чтобы этот терминал сохранялся / оставался открытым, и открывалась новая вкладкагде начинается другой сеанс бродяги

wait
cd /my/other/directory
.... do some commands...

У меня есть скрипт, работающий для первого сеанса бродяги / терминала и хранящийся в моем каталоге / bin /, но как мне добавить второй?

1 Ответ

0 голосов
/ 08 ноября 2019

Как это выглядит в точности, зависит от эмулятора терминала, но основной шаблон может быть следующим:

Первый скрипт (script1.sh)

vagrant up
vagrant ssh myhost
wait
cd /my/directory/
xterm -e script2.sh &
... do some commands...

Второй скрипт (script2.sh)

wait
cd /my/other/directory
.... do some commands...

Хитрость заключается в том, чтобы открыть другое окно терминала из первого скрипта (для xterm его xterm -e).

В случае, если вас интересует способ, который работает независимоэмулятора терминала, рассмотрите возможность использования tmux (мультиплексор терминала).

Другой общий совет: как правило, не рекомендуется хранить локально созданные скрипты под /bin. Более распространенным местом будет /usr/local/bin или $HOME/bin (хотя $HOME/bin может потребоваться настроить отдельно).

...