命令行玩转阿里云OSS
2016-03-12 21:07
435 查看
1、第一步
下载并配置好osscmdconfig –host=[oss.aliyuncs.com] –id=[accessid] –key=[accesskey]
2、批量上传文件
上传文件夹
find $dirname | sed 's/\.\///g' | xargs -I {} osscmd put {} oss://$bucket-name/{}
如果是上传当前目录将$dirname 替换成”.”
$dirname 要上传文件名称, 当然要在这个目录上层运行此命令, 可以利用grep -v 过滤掉一些无需上传的文件, 当然osscmd也有上传文件夹功能
批量上传一批文件
cat filelist | xargs -I {} osscmd put {} oss://$bucket-name/$dirname/{}
filelist 文件名列表
3、 文件Size 统计
列出不同大小文件个数
osscmd listallobject oss://$bucket-name/$dirname 2> /dev/null | grep "oss://" | awk '{print $3}' | sort | uniq -c
样例输出
1 0.00B
3 1011.50KB
1 115.23KB
1 1167.00B
1 11.96KB
1 12.08KB
3 12.84MB
1 1355.46KB
1 17.28MB
1 18.03MB
2 209.49KB
统计出OSS Bucket 文件夹不同大小级别文件个数 (B KB MB GB)
osscmd listallobject oss://$bucket-name/$dirname 2> /dev/null | grep "oss://" | awk '{print $3}' | rev | cut -c 1-2 | rev | sort | uniq -c | sed 's/0B/B/g'
样例输出
8 B
30 KB
10 MB
统计文件夹大小
osscmd listallobject oss://$bucket-name/$dirname 2> /dev/null | grep "oss://" | awk '{print $3}' | sed 's/MB/*1024^2/g' | sed 's/GB/*1024^3/g' | sed 's/KB/*1024/g' | tr -d 'B' | tr '\n' '+' | awk '{print "("$1"0)"}' | bc
算出来的结果是字节数,转换成其他单位需自行转换,如果结果有小数请不要奇怪
3、签名
给文件夹下所有文件进行签名
osscmd listallobject oss://$bucket-name/$dirname 2> /dev/null | grep "oss://" | awk '{print $4}' | xargs -I {} osscmd sign {} 2> /dev/null | grep http
4、批量删除文件
osscmd listallobject oss://$bucket-name/$dirname 2> /dev/null | grep "oss://" | awk '{print $4}' | xargs -I {} osscmd rm {}
批量删除文件下下的所有文件,或者制定前缀的文件, 更多功能请见OSS的lifecycle功能
当然删除文件列表也是OK的
cat filelist | xargs -I {} osscmd rm {}
相关文章推荐
- 阿里云存储服务OSS基本概念
- Laravel中使用阿里云OSS Composer包分享
- Python Web框架Flask中使用百度云存储BCS实例
- Python Web框架Flask中使用七牛云存储实例
- Python Web框架Flask中使用新浪SAE云存储实例
- iOS之七牛云存储应用
- Glusterfs:趋于成熟的集群文件系统
- 腾讯举报360云盘涉黄:个人云存储走向末路?
- 大家来参考,是否本博客需要增加又拍云存储呢?
- 七牛cdn云存储使用心得
- 云存储:架构先进技术高 个人企业两适宜
- 云计算体系架构之云存储技术与云存储服务
- 云存储两大架构分类TCS与LCA架构技术分析
- 热门云存储技术你知道几个
- 企业最佳云存储解决方案选型指导
- 选择云备份:应当怎样和云供应商签合同
- 微软发力云存储服务 再次更新SkyDrive
- 云计算对中国企业的意义
- 云计算论坛将开幕 业界巨头“云端”聚首
- oss https 代理