>
ist kein Befehlsargument, sondern Teil der Shell-Syntax. Da Sie shell=True
nicht verwenden beim Aufruf von subprocess.run()
, es wird nicht funktionieren.
Anstelle der Shell-Umleitung können Sie die stdout
verwenden Argument für subprocess.run()
um zu einer Datei umzuleiten.
args = ["mysqldump", f"-u{DBUser}", f"-h{DBHost}", f"-p{DBPass}", "--no-tablespaces", f'{DatabaseName}', f'{ArchiveTable}']
with open(BucketReadyName, 'w') as outfile:
subprocess.run(args, stdout=outfile)