Caros especialistas, tenho um pequeno problema... estou tentando executar vários scripts de shell com a mesma extensão (.sh) de uma só vez, que estão presentes em um diretório. Até agora, escrevi um script comum como o abaixo. Mas o problema é que ele não termina de executar, em vez disso, continua em execução. Não consigo descobrir onde os problemas persistem. Espero que algum especialista possa investigá-lo. meu pequeno código é o seguinte. se eu fizer algo como bash scriptone.sh, bash scriptkk.sh funciona bem, mas não quero uma maneira manual de fazer isso. Obrigado
#!/bin/sh
for f in *.sh; do
bash "$f" -H
done
Se o script comum que você faz referência em sua pergunta também tiver a
.sh
extensão e existir no mesmo diretório que todos os outros scripts que você está tentando executar, você fará um loop infinito sobre todos os.sh
arquivos, porque estará chamando seu script comum recursivamente.Você pode resolver isso de várias maneiras, por exemplo, mover o script comum para um local diferente ou colocar todos os scripts não comuns em um subdiretório específico e modificar seu script comum para encontrá-los lá.