Comment canaliser des commandes à l'aide du sous-processus de Python
Question : Comment puis-je utiliser subprocess.check_output() avec un commande pipe telle que ps -A | grep 'process_name'?
Réponse :
L'utilisation de tuyaux avec le module de sous-processus est possible, bien qu'il soit conseillé d'utiliser shell=True avec prudence en raison de problèmes de sécurité. Au lieu de cela, envisagez de séparer les processus ps et grep et de rediriger leur sortie :
ps = subprocess.Popen(('ps', '-A'), stdout=subprocess.PIPE) output = subprocess.check_output(('grep', 'process_name'), stdin=ps.stdout) ps.wait()
Cependant, dans ce cas particulier, une solution plus simple consiste à invoquer subprocess.check_output(('ps', '-A') ) et exécutez str.find sur la sortie.
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!