import subprocess
import sys
def exec_cmd(cmd):
#Löschen, wenn vor oder nach der cmd-Zeichenfolge ein Leerzeichen steht->Teilen Sie durch Leerzeichen und erstellen Sie eine Liste
cmd_split = cmd.strip().split()
#Erhalten Sie die Standardausgabe mit den Standardeinstellungen
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)
#Gibt zurück, wenn Standardausgabe vorhanden ist
if cp.stdout is not None:
return cp.stdout
Übergeben Sie den Befehl so wie er ist als Zeichenfolge
cmd = 'touch file.py'
exec_cmd(cmd)
Bei Listen wird join () durch Leerzeichen getrennt
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