Maison >développement back-end >tutoriel php >Pourquoi ne puis-je pas exécuter de scripts Bash depuis PHP ?
Exécuter des commandes Bash à partir de PHP
Tenter d'exécuter un script bash à partir de PHP à l'aide de commandes telles que shell_exec, exec et system peut parfois échouer. Une raison possible à cela est un problème avec le répertoire de travail actuel.
Pour résoudre ce problème, vous pouvez explicitement modifier le répertoire de travail avant d'exécuter le script à l'aide de la fonction chdir. Voici un exemple :
<code class="php">$old_path = getcwd(); // Store the current working directory chdir('/my/path/'); // Change to the correct directory $output = shell_exec('./script.sh var1 var2'); // Execute the script chdir($old_path); // Revert to the previous working directory</code>
En spécifiant le bon répertoire, vous vous assurez que le script bash est exécuté dans l'environnement prévu. Cela devrait résoudre le problème auquel vous étiez confronté lors de l'exécution du script à partir d'un fichier PHP.
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!