在OS X下运行s3cmd时如何转换unicode文件名

时间:2015-09-29 18:42:26

标签: macos unicode amazon-s3 rsync s3cmd

有没有办法使用OS X机器上的s3cmd将unicode文件名正确上传到S3?

问题如下:

  1. OS X使用NFD文件名,Linux / BSD和亚马逊使用NFC(用于静态文件服务)。
  2. 使用rsync时,我可以指定--iconv=UTF8-MAC,UTF-8开关,它会执行正确的文件名转换。
  3. 但是,当使用s3cmd时,文件名转换不会发生,因此无法从Web访问非ascii文件(使用其原始URL),因为它们的名称现在是NFD格式。
  4. 我知道这个问题的唯一解决方法是将文件上传到Linux / BSD服务器并从那里运行s3cmd。

    是否有任何解决方案不涉及使用Linux / BSD主机?

1 个答案:

答案 0 :(得分:2)

或者,您可以在https://github.com/minio/mc查看mc

mc提供了与Amazon S3兼容的云存储和文件系统一起使用的最少工具。它具有可恢复上传,进度条,并行复制等功能。 mc是用Golang编写的,并在Apache许可证v2下发布。

由于'mc'是用Golang编写的,因此我们获得了原生的UTF-8支持。 'mc'适用于OS X,Windows和Linux。

$ mc cp 本語.txt s3/andoria/

如果您在https://github.com/minio/mc/issues找到,请随时报告任何问题。希望这可以帮助。