jos*_*unt 8 google-app-engine google-cloud-storage gsutil
是否可以使用 gsutil(或其他一些工具)在 Google Cloud Storage 上批量重命名对象?我试图找出一种方法将一堆图像从 *.JPG 重命名为 *.jpg。
小智 8
这是在 bash 中执行此操作的本机方法,并在下面逐行代码解释:
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
Run Code Online (Sandbox Code Playgroud)
该解决方案推送 2 个列表,一个用于源文件,一个用于目标文件(用于“gsutil mv”命令):
gsutil ls gs://bucket_name/*.JPG > src-rename-list.txt
sed 's/\.JPG/\.jpg/g' src-rename-list.txt > dest-rename-list.txt
Run Code Online (Sandbox Code Playgroud)
使用以下代码将“gsutil mv”行和两个文件逐行连接起来:
paste -d ' ' src-rename-list.txt dest-rename-list.txt | sed -e 's/^/gsutil\ mv\ /'
Run Code Online (Sandbox Code Playgroud)
然后在 while 循环中运行每一行: while read line; 做 bash -c "$line"; 完毕
最后,清理并删除创建的文件:
rm src-rename-list.txt; rm dest-rename-list.txt
Run Code Online (Sandbox Code Playgroud)
以上已针对有效的 Google Storage 存储桶进行了测试。
| 归档时间: |
|
| 查看次数: |
6430 次 |
| 最近记录: |