La méthode subprocess.call() est un utilitaire polyvalent permettant d'exécuter des commandes et d'exécuter des processus dans un thread séparé. Bien que son objectif principal soit de lancer un processus sans attendre son achèvement, il peut arriver que vous ayez besoin d'accéder au résultat du processus exécuté. Cet article vise à répondre à ce besoin en explorant les techniques permettant de récupérer efficacement la sortie de subprocess.call().
Pour les versions 2.7 et supérieures de Python, le module subprocess propose une solution simplifiée à cette tâche : subprocess.check_output(). Cette méthode permet spécifiquement d'extraire la sortie standard d'un appel de processus et de la renvoyer sous forme de chaîne.
Considérons l'exemple suivant :
import subprocess output = subprocess.check_output(["ping", "-c", "1", "8.8.8.8"])
Dans ce scénario, la commande ping initie un simple requête ping à l’adresse IP spécifiée. Le résultat de cette opération ping est capturé et stocké dans la variable de sortie sous forme de chaîne.
Dans certaines situations, vous pouvez avoir besoin d'un contrôle plus granulaire sur la gestion de la sortie du processus. . Dans de tels cas, vous pouvez utiliser les techniques suivantes :
En utilisant les techniques susmentionnées, vous pouvez récupérer et gérer efficacement la sortie des processus lancés à l’aide de subprocess.call(). Que vous ayez besoin d'un moyen simple d'obtenir une sortie standard via subprocess.check_output() ou que vous ayez besoin d'un contrôle plus précis sur la gestion des sorties, ces méthodes vous permettent de répondre à vos exigences.
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!