2016-01-06 4 views
0

Comment puis-je exécuter plusieurs fichiers dans un fichier sh?Exécuter plus de sh dans le terminal

J'ai essayé cela mais sans aucune chance, il semble qu'il ne fonctionne que le premier. Quelqu'un peut-il m'aider s'il vous plaît?

sh ./robots.sh 
sh ./update_robots.sh 
sh ./update_auctions_end.sh 
sh ./auto_bidders.sh 

Meilleures salutations

Mes fichiers des fichiers .sh contenant tout ..

while [ true ] do php /Applications/XAMPP/xamppfiles/htdocs/xxxx/cronjob/auction.end.php sleep 30 done

+1

Il les exécutera tous. Il attend juste que chacun termine avant d'exécuter le suivant. Essayez-vous de les exécuter tous simultanément? – Arc676

+1

utilisez '&' à la fin pour l'exécution parallèle si vous n'avez pas de dépendances. c'est ce que tu veux? –

Répondre

0

Si vous essayez de les amener à courir en même temps (comme mentionné dans votre commentaire), utilisez &.

Dans votre cas:

#!/bin/bash 
./robots.sh & 
./update_robots.sh & 
./update_auctions_end.sh & 
./auto_bidders.sh & 

Ceci lancera des scripts en arrière-plan.

Assurez-vous que vous avez donné à tous les scripts l'autorisation d'exécution (le plus facile probablement chmod +x script).

2

Créer un fichier unique all.sh

intérieur all.sh

./robots.sh 
./update_robots.sh 
./update_auctions_end.sh 
./auto_bidders.sh 

finalement, je demande d'enlever mot de poisson dans all.sh

+0

./system.sh: ligne 2: ./robots.sh: autorisation refusée ./system.sh: ligne 3: ./update_robots.sh: autorisation refusée ./system.sh: ligne 4: ./update_auctions_end. sh: Autorisation refusée ./system.sh: ligne 5: ./auto_bidders.sh: Autorisation refusée Et j'ai chmodé à 777 –

+0

Il semble que vous ayez besoin d'être root pour lancer la commande sh pour votre machine. Essayez avec sudo – teshvenk

+0

Avez-vous 'chmod'ed _each_ fichier et pas seulement celui avec tous les autres dedans? – Arc676