Автоматизация файла Bash

У меня есть сценарий как ниже:

Мне назвали файл удара infra.sh. В этом infra.sh файле я имею ниже команд:

#!/bin/bash
gnome-terminal -e 'sh -c "bash ./redis-server.sh && sleep 30"'    
gnome-terminal -e 'sh -c "bash ./redis-client.sh && sleep 30"'    
gnome-terminal -e 'sh -c "bash ./playServer.sh && sleep 30"'    
gnome-terminal -e 'sh -c "bash ./proclient-service.sh && sleep 30"'    
gnome-terminal -e 'sh -c "bash ./infoServer.sh"'

Теперь, если я выполняюсь infra.sh от терминала путем ввода

sudo sh ./infra.sh

затем, все команды выше выполняются в отдельных терминалах. Они работают.

Но я хочу сделать его таким способом, которым я запущу infra.sh способом, что все услуги будут работать в фоне и а также терминал, от которого я выполнил команды для запуска infra.sh также войдет в фон.

Действительно ли это возможно?

заранее спасибо.

0
задан 24 December 2018 в 03:30

1 ответ

Две опции здесь:

  1. gnome-terminal <command> &: выполнит ту команду в фоновом режиме, но будет закончен, если терминал будет закрыт.

  2. nohup gnome-terminal <command> &: будет работать в фоне и продолжать бежать, даже если окно терминала закроется.

Теперь запущенный тот скрипт с также & или nohup как так nohup sudo sh ./infra.sh & или sudo sh ./infra.sh &

2
ответ дан 26 October 2019 в 18:23

Другие вопросы по тегам:

Похожие вопросы: