import subprocess
import sys
def exec_cmd(cmd):
#Supprimer s'il y a un espace avant ou après la chaîne cmd->Divisez par espace et faites une liste
cmd_split = cmd.strip().split()
#Obtenez une sortie standard avec les paramètres stdout
cp = subprocess.run(cmd_split, stdout=subprocess.PIPE)
# cp = subprocess.check_output(cmd_split)
if cp.returncode != 0:
print(f'{cmd_split[0]} faild.', file=sys.stderr)
sys.exit(1)
#Renvoie s'il y a une sortie standard
if cp.stdout is not None:
return cp.stdout
Passez la commande telle quelle sous forme de chaîne
cmd = 'touch file.py'
exec_cmd(cmd)
Pour les listes, join () séparés par des espaces
files = ['file1.py', 'file2.py', 'file3.py', 'file4.py', 'file5.py']
files_sep_space = ' '.join(files)
cmd = f'touch {files_sep_space}'
exec_cmd(cmd)
Recommended Posts