gsutil cp
命令具有-I
选项,可使用stdin
中的文件名列表复制多个文件。在python中有没有同样的方法,最好使用像官方谷歌存储客户端或gcfs/fsspec这样的库?还是只能迭代所有文件名并复制每个文件名?
使用当前gcsfs
master中的版本(即将发布(,您可以将文件从内存或带有列表的本地文件复制到GCS:
gcs.pipe({path1: content1, path2, content2}) # for in-memory bytes
gcs.put([local_path1, local_path2], [remote_path1, remote_path2]) # files
对于后者,您可以只提供一个远程路径,该路径将被假定为一个目录,并且远程文件将获得与本地文件相同的基本名称。
调用将同时处理,这可能比顺序上传快得多,尤其是对于小型传输。