Maison >développement back-end >Tutoriel Python >Comment puis-je capturer la sortie des commandes Shell en Python ?
Lors de l'exécution de commandes Shell, il est souvent nécessaire de capturer leur sortie, qu'il s'agisse de messages d'erreur ou de réussite. Voici quelques approches pour y parvenir :
run fonction :
import subprocess result = subprocess.run(['ls', '-l'], stdout=subprocess.PIPE) output = result.stdout.decode('utf-8')
One-liner pour Python 3.7 :
subprocess.run(['ls', '-l'], capture_output=True, text=True).stdout
check_output :
import subprocess output = subprocess.check_output(['mysqladmin', 'create', 'test', '-uroot', '-pmysqladmin12']) output = output.decode('utf-8')
import subprocess p = subprocess.Popen(['ls', '-a'], stdout=subprocess.PIPE, stderr=subprocess.PIPE) output, error = p.communicate() output = output.decode('utf-8') if error: error = error.decode('utf-8')
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!