Maison > développement back-end > tutoriel php > Pourquoi mes scripts Bash ne s'exécutent-ils pas depuis PHP ?

Pourquoi mes scripts Bash ne s'exécutent-ils pas depuis PHP ?

DDD
Libérer: 2024-11-04 21:00:02
original
811 Les gens l'ont consulté

Why are My Bash Scripts Not Executing from PHP?

Exécution de commandes Bash à partir de PHP : dépannage des scripts non exécutés

Un utilisateur rencontre des difficultés pour exécuter un script Bash à partir d'un fichier PHP. Malgré les tentatives d'utilisation de shell_exec et de system, le script reste inexécuté. Cependant, d'autres commandes comme "ls" fonctionnent correctement en utilisant shell_exec.

Cause potentielle et solution :

Le problème provient très probablement de l'exécution du script à partir du mauvais répertoire. Pour résoudre ce problème, l'utilisateur doit remplacer le répertoire de travail actuel par le répertoire où réside le script avant de l'exécuter. Cela garantit le contexte correct pour l'exécution du script.

Extrait de code :

L'extrait de code suivant montre comment exécuter correctement le script Bash :

<code class="php">$old_path = getcwd();
chdir('/my/path/'); // Change to the script's directory
$output = shell_exec('./script.sh var1 var2');
chdir($old_path); // Return to the previous working directory</code>
Copier après la connexion

Dans ce code, getcwd() récupère le répertoire de travail actuel, chdir('/my/path/') définit le répertoire de travail sur le chemin du script, shell_exec('./script.sh var1 var2') exécute le script avec les arguments donnés, et chdir($old_path) revient au répertoire de travail précédent.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal