oss cmd
osscmd是基于python 2.5.4(其他版本没有试过),用来操作OSS的,可使用命令行来上传和下载文件。
下载地址:http://storage.aliyun.com/leo/osscmd.tar.gz
使用方法:
1. 下载到某一目录,例如下载到/tmp/ 目录
请先确认机器上安装了python,目前只在2.5.4上测试过。
wget http://storage.aliyun.com/leo/osscmd.tar.gz
2. 解压后会有osscmd和oss目录,
#解压
tar -zxvf osscmd.tar.gz
#查看解压的目录,应该有如下结果
$ ls
oss osscmd osscmd.tar.gz
#创建快捷执行方式
vi ~/.bashrc
添加如下
alias osscmd='python /tmp/osscmd'
#让快捷方式生效
source ~/.bashrc
#确认生效
在任意目录敲击osscmd能出现如下内容就表示生效了。
$ osscmd
osscmd:
getallbucket(gs)
createbucket(cb,mb,pb) bucket --acl=[acl]
deletebucket(db) bucket
deletewholebucket bucket
getacl bucket
setacl bucket --acl=[acl]
allow private, public-read, public-read-write
ls(list) oss://bucket/[prefix] [marker] [delimiter] [maxkeys]
listallobject oss://bucket/[prefix]
deleteallobject oss://bucket/[prefix]
downloadallobject oss://bucket/[prefix] localdir
put localfile oss://bucket/object --content-type=[content_type] --headers="key1:value1, key2:value2"
upload localfile oss://bucket/object --content-type=[content_type]
get oss://bucket/object localfile
cat oss://bucket/object
meta oss://bucket/object
copy oss://source_bucket/source_object oss://target_bucket/target_object --headers="key1:value1, key2:value2"
rm(delete,del) oss://bucket/object
signurl(sign) oss://bucket/object --timeout=[timeout_seconds]
init oss://bucket/object
uploadpartfromstring(upfs) oss://bucket/object --upload_id=xxx --part_number=xxx --data=xxx
listpart oss://bucket/object --upload_id=xxx
listparts oss://bucket
multiupload(multi_upload,mp) localfile oss://bucket/object
multiupload(multi_upload,mp) localfile oss://bucket/object --upload_id=xxx --thread_num=10 --max_part_num=1000
config --id=[accessid] --key=[accesskey]
3. 配置id和key
先用osscmd config --id=xxxx --key=xxx来配置id和key
不知道什么是id和key?不知道id和key是什么?请参考
http://help.aliyun.com/manual?helpId=786
4. 创建bucket 这里以myfirstbucket为例,由于bucket必须是唯一的,所以在创建bucket的时候请输入一个其他名字
对应说明中的命令:
createbucket(cb,mb,pb) bucket --acl=[acl]
#可以这样输入,默认acl(访问控制权限)是私有读写,也就是private
osscmd cb myfirstbucket 或者输入osscmd createbucket myfirstbucket --acl=private
#查看acl
osscmd getacl myfirstbucket
5. 查看创建的bucket
osscmd gs 或者 osscmd getallbucket
#如果成功则可以看见
2012-06-30 03:32 myfirstbucket
6. 上传文件
#例如上传本地的jpg到OSS上
$ osscmd put nvshen.jpg oss://myfirstbucket/mytestfolder/test.jpg
100% Object URL is: http://storage.aliyun.com/myfirstbucket/mytestfolder/test.jpg
Object abstract path is: oss://myfirstbucket/mytestfolder/test.jpg
ETag is "178F994367F196AAFA025F2A7CD7B51C"
#确认object已经上传
$ osscmd ls oss://myfirstbucket
prefix list is:
object list is:
2012-06-30 03:42 35KB oss://myfirstbucket/mytestfolder/test.jpg
prefix list number is: 0
object list number is: 1
7. 下载文件,请注意
get oss://bucket/object localfile
#实际输入
osscmd get oss://myfirstbucket/mytestfolder/test.jpg test.jpg
其他的命令和这些类似
需要注意的是deleteallobject oss://bucket/[prefix] 这个删除命令需要慎重,请先用在不重要的bucket,确认这个命令和你想象的一样。
欢迎各种吐槽,各种拍砖。