目标是从s3" dir2"移动所有文件。目录到EMR目录" mydir"。
我正在使用命令:
aws s3 mv s3:/// dir1 / dir2 / / mnt / mydir / --recursive
此命令被执行但s3中的dir2目录被删除。 dir2中的文件虽然移动到EMR的mydir。
如何在不删除源目录的情况下仅从s3的源目录移动文件?
答案 0 :(得分:2)
处理多个对象时,您希望使用sync而不是cp或mv:
aws s3 sync s3:///dir1/dir2/ /mnt/mydir/
有很多方法可以直接从S3将数据加载到EMR中,因此您可能需要查看这些内容。
更新:我已确认:
aws s3 mv s3://bucket/f1/f2 . --recursive
将所有文件移到f2 /中,同时将f2留在存储桶中。
答案 1 :(得分:1)
S3中实际上不存在目录或文件夹。您调用的目录只是S3中的常用文件名前缀。当没有具有该前缀的文件时,S3中不再存在“目录”。