golang版とpython版がある。
python版はまったくメンテされてないように見える。
pip list | grep aliyun sudo pip uninstall aliyuncli # aliyun-python-sdk-* もあれば同様にアンインストール # ~/.aliyuncli/ に設定が残っているので不用であれば削除 rm -rf ~/.aliyuncli
wget https://aliyuncli.alicdn.com/aliyun-cli-linux-3.0.109-amd64.tgz tar xvfz aliyun-cli-linux-*-amd64.tgz sudo mv aliyun /usr/local/bin/ aliyun version 3.0.109
aliyun auto-completion source ~/.bashrc # ~/.bashrc に以下が追加される complete -C /usr/local/bin/aliyun aliyun
aliyun configure --profile default Access Key Id []: **** Access Key Secret []: **** Default Region Id []: cn-hangzhou Default Output Format [json]: json (Only support json)) Default Language [zh|en] en: en # ~/.aliyun/config.json に保存される
aliyun help
aliyun ecs DescribeRegions --profile example | jq
aliyun ecs DescribeImages --profile default --RegionId cn-hangzhou --Architecture x86_64 --ImageName centos* --profile example | jq
aliyun ecs DescribeInstances --PageSize 100 --profile example
aliyun oss rm --bucket oss://bucket/ -m -r --profile example Do you really mean to remove recursively objects of oss://bucket/(y or N)? y Do you really mean to remove the Bucket: bucket(y or N)? y
aliyun sts GetCallerIdentity --profile example { "AccountId": "1234567890123456", "Arn": "acs:ram::1234567890123456:user/user01", "IdentityType": "RAMUser", "PrincipalId": "123456789012345678", "RequestId": "xxxx-xxxx-xxxx-xxxx-xxxx", "UserId": "123456789012345678" }
--diskIds '["d-233yy128q"]'
aliyun ram UpdateUser --UserName "user01@example.com" --NewUserName "user01" --profile example
python版は古いので、 golang版推奨
python --version Python 3.6.1 pip3 install ali-cli==0.5.6
aliyun configure --profile example
# キュー一覧 ali --profile example mns queue list > example.mns-queue-list.$(date +%Y%m%d).json # キューの名前だけ&個数 jq -r '.Queues.Queue[].QueueName' example.mns-queue-list.YYYYMMDD.json | wc -l # キューを全て削除 jq -r '.Queues.Queue[].QueueName' example.mns-queue-list.YYYYMMDD.json \ | xargs -i ali --profile example mns queue delete --name {}