使用 gsutil 复制文件时有什么方法可以删除文件扩展名吗?
From local 0001:
0001/a/1.jpg
0001/b/2.png
To bucket 0002:
gs://0002/a/1
gs://0002/b/2
(我可以在本地删除扩展,但复制到 GS 时我将丢失内容类型)
最佳答案
gsutil 没有任何以这种方式重写文件名的机制。您可以编写一个 shell 循环来迭代文件并删除正在复制的文件名中的扩展名。
要保留 Content-Type,这里有一些建议:
在命令行上明确设置,例如,
gsutil -h 内容类型:image/jpeg cp 0001/a/1.jpg gs://0001/a/1
使用 use_magicfile 配置(在 .boto 配置文件中),使“file”命令检测到 Content-Type。仅当您在 Unix 或 MacOS 上运行时这才有效。在这种情况下,您仍然可以使用 shell 脚本来删除文件扩展名,但不必指定 -h Content-Type 参数:
gsutil cp 0001/a/1.jpg gs://0001/a/1
迈克
关于google-cloud-storage - 使用 gsutil 删除文件扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12611199/