Comment parcourir les répertoires avec des sous-processus en Python ?

Patricia Arquette
Libérer: 2024-11-04 19:35:02
original
791 Les gens l'ont consulté

How to Navigate Directories with Subprocesses in Python?

Navigation dans les répertoires à l'aide de sous-processus

Lors de l'exécution de scripts dans des sous-répertoires à l'aide de sous-processus, il est crucial de comprendre la distinction entre les commandes shell internes et les programmes externes.

Dans votre cas, vous essayez d'appeler la commande cd du shell en utilisant subprocess.call(['cd ..']). Cependant, cd est une commande interne qui ne peut pas être exécutée directement en tant que programme. Pour exécuter une commande interne, vous devez utiliser l'argument shell=True :

<code class="python">subprocess.call('cd ..', shell=True)</code>
Copier après la connexion

Cependant, spécifier shell=True est généralement déconseillé car cela peut compromettre la sécurité. Au lieu de cela, vous pouvez utiliser le paramètre cwd pour modifier le répertoire de travail avant d'exécuter un sous-processus :

<code class="python">subprocess.Popen("ls", cwd="/")</code>
Copier après la connexion

Cette approche garantit que le sous-processus est exécuté dans le répertoire de travail spécifié sans dépendre du shell, offrant ainsi une sécurité plus élevée. et environnement prévisible pour votre script.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal