管理存储桶
创建桶;
$ aws s3 mb s3://bucket-name
删除桶:
$ aws s3 rb s3://bucket-name
删除非空桶:
$ aws s3 rb s3://bucket-name --force
列出存储桶
$ aws s3 ls
列出存储桶中所有的对象和文件夹
$ aws s3 ls s3://bucket-name
列出桶中 bucket-name/ MyFolder 中的对象
$ aws s3 ls s3://bucket-name/MyFolder
管理对象
命令包括 aws s3 cp、aws s3 ls、aws s3 mv、aws s3 rm 和 sync。cp、ls、mv 和 rm 命令的用法与它们在 Unix 中的对应命令相同。
// 将当前目录里的 MyFile.txt文件拷贝到 s3://my-bucket/MyFolder
$ aws s3 cp MyFile.txt s3://my-bucket/MyFolder/
// 将s3://my-bucket/MyFolder所有 .jpg 的文件移到 ./MyDirectory
$ aws s3 mv s3://my-bucket/MyFolder ./MyDirectory --exclude '*' --include '*.jpg' --recursive
// 列出 my-bucket的所有内容
$ aws s3 ls s3://my-bucket
// 列出my-bucket中MyFolder的所有内容
$ aws s3 ls s3://my-bucket/MyFolder
// 删除 s3://my-bucket/MyFolder/MyFile.txt
$ aws s3 rm s3://my-bucket/MyFolder/MyFile.txt
// 删除 s3://my-bucket/MyFolder 和它的所有内容
$ aws s3 rm s3://my-bucket/MyFolder --recursive
把S3的文件夹移动到本地的文件夹
这里dssm_sample_20210705.tfrecord的文件夹是不存在的,会自动创建,
如果这样写,最后是把s3文件夹dssm_sample_20210705.tfrecord里的内容复制过来
所以为了保持一致,本地也要写一个dssm_sample_20210705.tfrecord文件夹
$ aws s3 cp s3://mildom-recommend/wy_jars/dssm_sample_20210705.tfrecord/ /home/dataw/utils/data_test/dssm_sample_20210705.tfrecord/ --recursive --quiet
--quiet
代表不显示指定命令执行的操作(不输出过程)
aws s3 cp s3://myBucket/dir localdir --recursive
当 --recursive
选项与 cp
、mv
或 rm
一起用于目录/文件夹时,命令会遍历目录树,包括所有子目录
sync命令
sync 命令的形式如下。可能的源-目标组合有:
本地文件系统到 Amazon S3
Amazon S3 到本地文件系统
Amazon S3 到 Amazon S3
$ aws s3 sync <source> <target> [--options]
例如:本地文件系统到S3中:
$ aws s3 sync 本地目录/. s3://my-bucket/目录
1、从s3://test1同步到/test/1/(下载)
aws --region cn-northwest-1 s3 sync "s3://test1" /test/1/
–region 区域
2、从/test/2/同步到s3://test1(上传)
aws --region cn-northwest-1 s3 sync /test/2/ "s3://test1" --delete
–region 区域
–delete 删除s3://test1中不在/test/2/中的内容
3、从/test/2/同步到s3://test1(上传)
aws --region cn-northwest-1 s3 sync /test/2/ "s3://test1" --storage-class GLACIER
–storage-class 对象的存储类型,可选择STANDARD | REDUCED_REDUNDANCY | STANDARD_IA | ONEZONE_IA | INTELLIGENT_TIERING | GLACIER | DEEP_ARCHIVE 默认是 STANDARD
- STANDARD: 用于储存经常访问的对象,默认的标准储存类别,存储费用最高,请求(执行Select/GET/PUT等操作)费用最低;
- STANDARD_IA: 用于储存不经常访问的对象,存储费用较低,请求费用较高;
- INTELLIGENT_TIERING: 这种储存类别将对象存储在两个访问层中,一个是频繁访问的层,一个是不频繁访问的层;如果对象30天内未访问,则会被移动至不频繁访问的层,如果不频繁访问层中的对象被访问,则会被移动至频繁访问的层;频繁访问的层的存储费用与STANDARD一样,不频繁访问层的存储费用与STANDARD_IA一样,该储存类别的请求费用与STANDARD一样,该储存类别有额外的监控费用;
- ONEZONE_IA: 与STANDARD_IA类似,只是只在一个可用区存储对象数据,因此比STANDARD_IA更便宜;
- GLACIER: 适用于不常访问数据,存储费用最低,存档对象不能实时访问,需要访问时要将存档对象转为RRS,对对象的访问按照RRS价格收费;
- RRS: 用于冗余的、非关键性可再生数据的存档,AWS不建议用户自己去使用;
- Glacier Deep Archive: 这是AWS即将推出的一种新的储存类,AWS称其有比* * GLACIER更低的储存价格,网上资料显示其最小存档时间为180天,检索时间也比GLACIER更长,在12个小时以内,其余性质与GLACIER一致;
Reference:
https://blog.csdn.net/weixin_33924220/article/details/88659499