introuvable" Erreur dans Paramiko pour l'exécution des commandes Unix ?" /> introuvable" Erreur dans Paramiko pour l'exécution des commandes Unix ?" />
Exécution de commandes Unix avec l'erreur " introuvable" dans Paramiko
La bibliothèque Paramiko de Python peut rencontrer des difficultés lors de la tentative d'exécution de certaines commandes Unix à l'aide de exec_command . Plus précisément, l'erreur « sh: : not found » peut survenir. Alors que des commandes simples comme "ls" peuvent s'exécuter avec succès, des commandes spéciales telles que "sesu" échouent.
Cause première
La fonction exec_command dans Paramiko ne s'exécute pas par défaut le shell en mode "login" ou allouer un pseudo-terminal. Cela se traduit par un ensemble de scripts de démarrage différent de celui des sessions interactives SSH classiques.
Solutions
Plusieurs solutions peuvent résoudre ce problème :
-
Utilisez un chemin complet : Spécifiez le chemin complet de la commande, par exemple "/bin/sesu test".
-
Définissez la variable d'environnement PATH : Assurez-vous que le PATH du système inclut le répertoire contenant l'exécutable.
-
Exécutez la commande via un shell de connexion : Utilisez le commutateur "--login", par exemple "bash --login -c "sesu test"".
-
Modifiez l'environnement de la commande : Définissez des variables d'environnement spécifiques dans la commande elle-même, en utilisant une syntaxe telle que "PATH=""$PATH;/path/to/sesu" " && sesu test".
-
Forcer l'allocation du pseudo-terminal : Utilisez le paramètre "get_pty" dans exec_command, mais soyez conscient des effets secondaires potentiels.
Considérations supplémentaires
- Des problèmes peuvent également survenir avec des variables d'environnement telles que LD_LIBRARY_PATH et les emplacements d'objets partagés.
- Référez-vous aux ressources liées pour plus d'informations et des approches alternatives.
Reportez-vous aux ressources liées pour plus d'informations et des approches alternatives.
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!