Appeler un script .sh depuis un autre script .sh
Bonjour à tous,
J'espère que vous allez tous à merveille.
J'ai créé des fichiers
Une aide serait la bien venue
Merci d'avance !!!
J'espère que vous allez tous à merveille.
J'ai créé des fichiers
.sh. Le premier c'est pour s'authentifier. Mais après cela je veux que l'utilisateur soit redirigé automatiquement vers l'autre fichier après 2 à 3 secondes
Une aide serait la bien venue
Merci d'avance !!!
A voir également:
- Fichier sh
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
2 réponses
Bonjour
Depuis un script shell, tu peux exécuter un script shell comme tu le ferais depuis un terminal, e.g. :
Note qu'il existe plusieurs interpréteur shell (bash, dash, tcsh). Si ton script 2 utilise de la syntaxe bash, l'appel deviendra :
Note que bien souvent, dans un script (shell, python, perl, ...) on ajoute en tête de fichier une ligne indiquant l'interpréteur à utiliser (on appelle ça le shebang), qui évite ainsi de se demander dans script1 quel interpréteur utiliser. Mais cela requiert de donner au préalable des droits en exécution à ce fichier
Ensuite d'exécuter le script pourra être lancé ainsi :
ou, si tu es dans le répertoire du script :
De plus, il faut savoir que quand tu lances une commande dans un terminal, ton interpéteur shell commence par regarder ta variable d'environnement
L'endroit typique où mettre de tels scripts, c'est dans
Bonne chance
Depuis un script shell, tu peux exécuter un script shell comme tu le ferais depuis un terminal, e.g. :
sh /chemin/vers/fichier.sh
Note qu'il existe plusieurs interpréteur shell (bash, dash, tcsh). Si ton script 2 utilise de la syntaxe bash, l'appel deviendra :
bash /chemin/vers/script2.sh
Note que bien souvent, dans un script (shell, python, perl, ...) on ajoute en tête de fichier une ligne indiquant l'interpréteur à utiliser (on appelle ça le shebang), qui évite ainsi de se demander dans script1 quel interpréteur utiliser. Mais cela requiert de donner au préalable des droits en exécution à ce fichier
chmod a+x /chemin/vers/le/script2.sh.
Ensuite d'exécuter le script pourra être lancé ainsi :
/chemin/vers/le/script2.sh
ou, si tu es dans le répertoire du script :
./script2.sh
De plus, il faut savoir que quand tu lances une commande dans un terminal, ton interpéteur shell commence par regarder ta variable d'environnement
PATH(pour voir sa valeur, lance
echo $PATH), pour voir de quelle commande il s'agit. Donc si ton script est dans un de ces répertoire, il ne sera pas nécessaire de préciser le chemin relatif/absolu vers
script2.sh. Tu pourras lancer directement :
script2.sh
L'endroit typique où mettre de tels scripts, c'est dans
/usr/local/bin. Pour mettre ton script à cette endroit, il faudra l'y copier avec des droits root (
sudo cp /chemin/vers/le/script2.sh /usr/local/bin). Le script devient alors ainsi accessible pour tous les utilisateurs.
Bonne chance
Exileur
Messages postés
1475
Date d'inscription
Statut
Membre
Dernière intervention
150
Ne pas oublier qu'il faut que le fichier/script en question soit executable :
mamiemando
Messages postés
33785
Date d'inscription
Statut
Modérateur
Dernière intervention
7 885
Note que
était effectivement évoqué dans mon message, cf 3e paragraphe :-)