В Python я использую подпроцесс для вызова команд копирования и перемещения gsutil, но в настоящее время я не могу выбрать несколько расширений.
Та же команда gsutil работает в терминале, но не в питоне:
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.
Так что очевидно, что подпроцесс каким-то образом искажает команду...
Я всегда мог неэффективно повторять команду для каждого из типов файлов, но предпочел бы разобраться в этом!