首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Google云存储上的批量重命名对象

Google云存储上的批量重命名对象
EN

Stack Overflow用户
提问于 2014-11-27 16:49:10
回答 3查看 6.9K关注 0票数 8

是否可以使用gsutil (或其他工具)在Google Cloud Storage上批量重命名对象?我正在尝试想办法将一堆图片从*.jpg重命名为*.JPG。

EN

回答 3

Stack Overflow用户

发布于 2019-10-08 00:05:59

以下是在bash中完成此操作的本机方法,下面逐行对代码进行解释:

代码语言:javascript
运行
复制
gsutil ls gs://bucket_name/*.JPG > src-rename-list.txt
sed 's/\.JPG/\.jpg/g' src-rename-list.txt > dest-rename-list.txt
paste -d ' ' src-rename-list.txt dest-rename-list.txt | sed -e 's/^/gsutil\ mv\ /' | while read line; do bash -c "$line"; done
rm src-rename-list.txt; rm dest-rename-list.txt

该解决方案推送两个列表,一个用于源文件,另一个用于目标文件(将在"gsutil mv“命令中使用):

代码语言:javascript
运行
复制
gsutil ls gs://bucket_name/*.JPG > src-rename-list.txt
sed 's/\.JPG/\.jpg/g' src-rename-list.txt > dest-rename-list.txt

使用以下代码逐行连接"gsutil mv“行和这两个文件:

代码语言:javascript
运行
复制
paste -d ' ' src-rename-list.txt dest-rename-list.txt | sed -e 's/^/gsutil\ mv\ /'

然后在while循环中运行每一行: while read line;do bash -c "$line";do

最后,清理并删除创建的文件:

代码语言:javascript
运行
复制
rm src-rename-list.txt; rm dest-rename-list.txt

上面的内容已经在一个工作的Google存储桶上进行了测试。

票数 10
EN

Stack Overflow用户

发布于 2020-03-15 20:02:58

gsutil 不支持并行化和批量复制/重命名。

你有两个选择:

  • 使用数据流过程来执行操作或
  • 使用 GNU 并行使用多个进程启动它

如果您使用 GNU Parallel,最好部署一个新实例来执行批量复制/重命名操作:

  • 首先: - 列出要复制/重命名的文件(源和目标由空格或制表符分隔的文件),如下所示:
代码语言:javascript
运行
复制
gs://origin_bucket/path/file gs://dest_bucket/new_path/new_filename
  • Second:在该实例中启动新的compute instance
  • Third:登录并安装Gnu parallel
代码语言:javascript
运行
复制
sudo apt install parallel
  • 第三:使用google进行授权(gcloud auth login),因为计算的服务帐户可能没有移动/重命名文件的权限。
代码语言:javascript
运行
复制
gcloud auth login
  • 使用parallel:

执行复制(gsutil cp)或移动(gsutil mv)操作

代码语言:javascript
运行
复制
   parallel -j 20 --colsep ' ' gsutil mv {1} {2} :::: file_with_source_destination_uris.txt

这将使gsutil cp操作并行运行20次。

票数 1
EN

Stack Overflow用户

发布于 2014-11-27 16:55:20

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27166441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档