【发布时间】:2015-05-10 14:41:28
【问题描述】:
在 Python 中,我使用 subprocess 调用 gsutil 复制和移动命令,但目前无法选择多个扩展。
相同的 gsutil 命令在终端上有效,但在 python 中无效:
cmd_gsutil = "sudo gsutil -m mv gs://xyz-ms-media-upload/*.{mp4,jpg} gs://xyz-ms-media-upload/temp/"
p = subprocess.Popen(cmd_gsutil, shell=True, stderr=subprocess.PIPE)
output, err = p.communicate()
如果说有四种文件类型要移动但存储桶为空,则终端返回的 gsutil 错误为:
4 files/objects could not be transferred.
而通过子进程运行时返回的错误是:
1 files/objects could not be transferred.
很明显 subprocess 正在以某种方式破坏命令......
我总是可以低效地为每种文件类型重复命令,但更愿意深入了解!
【问题讨论】:
标签: python terminal subprocess gsutil