Para executar todos os scripts ao mesmo tempo (em paralelo), use:
script_1.sh &
script_2.sh &
script_3.sh &
script_4.sh &
script_5.sh &
Para executar um após o outro (sequencialmente), use:
script_1.sh &&
script_2.sh &&
script_3.sh &&
script_4.sh &&
script_5.sh
Aprimoramento para comentários
Se você possui 200 scripts que deseja executar ao mesmo tempo (o que pode atolar a máquina BTW), use este script:
#!/bin/bash
for Script in my_folder/*.sh ; do
echo bash "$Script" &
done
Defina os atributos de script como executáveis com o comando:
chmod a+x /path/to/script.sh
Na primeira vez em que você executar o script, ele fará eco apenas dos nomes dos 200 scripts que estará executando. Quando estiver satisfeito, os nomes certos serão selecionados, edite o script e altere esta linha:
echo bash "$Script" &
para:
bash "$Script" &
Há três maneiras de chamar um script bash de outro, conforme respondido aqui:
Torne o outro script executável, adicione a #!/bin/bashlinha na parte superior e o caminho em que o arquivo está para a $PATHvariável de ambiente. Então você pode chamá-lo como um comando normal;
Ou chamá-lo com o comando fonte (alias é.) Como este: source /path/to/script;
Ou usar o comando bash para executá-lo: /bin/bash /path/to/script;
No caso do OP, um ou mais dos 200 scripts não continham a #!/bin/bashprimeira linha shebang no arquivo. Como tal, a opção 3. teve que ser usada.
200 scripts em execução ao mesmo tempo
Um comentário foi levantado sobre se eles estão "rodando ao mesmo tempo". Em um sistema típico de 8 CPUs, 25 scripts compartilharão uma CPU ao mesmo tempo, mas apenas um script será executado por vez até que o intervalo de tempo (medido em milissegundos) se esgote. Em seguida, o próximo trabalho receberá sua parte justa de milissegundos, depois o próximo trabalho, etc., etc.
Em termos gerais, podemos dizer que 200 trabalhos estão sendo executados "simultaneamente", mas não "simultaneamente" em 8 CPUs, o que equivale a 25 trabalhos por CPU:

Imagem acima e comentários abaixo do planejador do kernel do Linux
