Maison >développement back-end >Tutoriel Python >Comment ouvrir le shell en python

Comment ouvrir le shell en python

下次还敢
下次还敢original
2024-04-11 02:02:48866parcourir

En Python, vous pouvez utiliser le module de sous-processus pour ouvrir un shell externe : 1. Importez le module de sous-processus 2. Créez un objet Process 3. Lisez la sortie 4. Obtenez le code de sortie.

Comment ouvrir le shell en python

Comment ouvrir un shell en Python

En Python, vous pouvez utiliser le module subprocess pour ouvrir un shell externe. Voici les étapes détaillées : subprocess 模块打开一个外部 shell。以下是详细步骤:

1. 导入 subprocess 模块

<code class="python">import subprocess</code>

2. 创建 Process 对象

创建 subprocess.Popen 对象,指定要启动的 shell 命令和参数。

<code class="python"># 打开 bash shell
process = subprocess.Popen(['bash'], shell=True)

# 打开 cmd shell(Windows)
process = subprocess.Popen(['cmd'], shell=True)</code>

3. 读取输出

使用 communicate() 方法读取 shell 命令的输出。

<code class="python"># 读取标准输出和标准错误输出
output, error = process.communicate()</code>

4. 获取退出代码

使用 returncode 属性获取 shell 命令的退出代码。

<code class="python"># 获取退出代码,0 表示成功
exit_code = process.returncode</code>

示例:

<code class="python">import subprocess

# 打开 bash shell 并执行 ls 命令
process = subprocess.Popen(['bash', '-c', 'ls'], shell=True)

# 读取输出
output, error = process.communicate()

# 打印输出
print(output.decode('utf-8'))

# 获取退出代码
exit_code = process.returncode</code>

注意:

  • shell=True 参数允许以 shell 模式启动,使 shell 能够解释命令中的特殊字符,如管道和重定向。
  • 还可以使用 stdinstdoutstderr
1. Importez le module de sous-processus 🎜🎜rrreee🎜🎜2. Créez un objet Process 🎜🎜🎜Créez un objet subprocess.Popen et spécifiez la commande shell et les paramètres. à démarrer. 🎜rrreee🎜🎜3. Lire la sortie🎜🎜🎜Utilisez la méthode communicate() pour lire la sortie de la commande shell. 🎜rrreee🎜🎜4. Obtenez le code de sortie🎜🎜🎜Utilisez l'attribut returncode pour obtenir le code de sortie de la commande shell. 🎜rrreee🎜🎜Exemple : 🎜🎜rrreee🎜🎜Remarque : 🎜🎜Le paramètre
  • shell=True permet de démarrer en mode shell, permettant au shell d'interpréter les caractères spéciaux dans les commandes, tels que comme tuyaux et redirection. 🎜
  • L'entrée, la sortie et la sortie d'erreur standard peuvent également être spécifiées à l'aide des paramètres stdin, stdout et stderr. 🎜🎜

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!

Déclaration:
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