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 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 能够解释命令中的特殊字符,如管道和重定向。stdin
、stdout
和 stderr
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. 🎜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!