| name | 阿里云OSS管理 |
| description | 上传、下载、列出、删除阿里云 OSS 文件,生成签名链接 |
| category | ops |
| tags | ["oss","aliyun","阿里云","上传","下载","签名链接","存储"] |
| triggers | ["上传到OSS","OSS上传","上传文件","列出OSS","OSS文件","签名链接","预览图片","删除OSS"] |
| tool | null |
| risk_level | write |
阿里云 OSS 管理
通过 aliyun-oss-cli 命令行工具管理阿里云 OSS 存储桶中的文件:上传、列出、预览、签名、删除。
前置条件
安装
git clone https://github.com/tuyoogame/aliyun-oss-cli.rs.git
cd aliyun-oss-cli.rs
./build.sh
编译产物在 build/ 目录下,将二进制放入 $PATH 即可使用。
初始化配置
aliyun-oss-cli init
生成 ~/.aliyun-oss-cli/config.yaml,编辑填入 endpoint、access-key、secret-key、bucket。
配置格式
扁平格式(单配置):
endpoint: "oss-cn-hangzhou.aliyuncs.com"
access-key: "your-access-key-id"
secret-key: "your-access-key-secret"
bucket: "your-bucket-name"
多 profile 格式(多环境,用 --profile 切换):
default:
endpoint: "oss-cn-hangzhou.aliyuncs.com"
access-key: "..."
secret-key: "..."
bucket: "bucket-a"
beijing:
endpoint: "oss-cn-beijing.aliyuncs.com"
access-key: "..."
secret-key: "..."
bucket: "bucket-b"
配置优先级
命令行参数 > 环境变量 > 配置文件
环境变量:ALIYUN_OSS_ENDPOINT、ALIYUN_OSS_ACCESS_KEY、ALIYUN_OSS_SECRET_KEY、ALIYUN_OSS_BUCKET
命令速查
| 命令 | 用途 | 风险等级 |
|---|
init | 初始化配置文件 | write |
ls | 列出文件 | read |
upload | 上传文件/目录 | write |
preview | 图片预览(签名链接) | read |
sign | 生成签名访问链接 | read |
delete | 删除文件 | destructive |
使用方法
列出文件
aliyun-oss-cli ls
aliyun-oss-cli ls images/
aliyun-oss-cli ls -l
aliyun-oss-cli ls --max-keys 50
aliyun-oss-cli ls --profile beijing
上传文件
aliyun-oss-cli upload myfile.jpg
aliyun-oss-cli upload myfile.jpg images/
aliyun-oss-cli upload myfolder/ -d
aliyun-oss-cli upload myfile.jpg -p assets/
aliyun-oss-cli upload myfile.jpg --public
aliyun-oss-cli upload myfile.jpg -r
| 选项 | 短选项 | 说明 |
|---|
DESTINATION | - | 位置参数,目标路径 |
--dir | -d | 上传目录模式 |
--prefix | -p | 目标路径前缀 |
--public | - | 公共读 ACL |
--replace | -r | 覆盖已存在文件 |
预览图片
aliyun-oss-cli preview myimage.jpg
aliyun-oss-cli preview myimage.jpg -o
aliyun-oss-cli preview myimage.jpg --expire 3600
生成签名链接
aliyun-oss-cli sign myfile.txt
aliyun-oss-cli sign myfile.txt -u
aliyun-oss-cli sign myfile.txt -e 3600
删除文件
aliyun-oss-cli delete myfile.jpg
aliyun-oss-cli delete file1.jpg file2.png
aliyun-oss-cli delete myfile.jpg -q
安全约束
- 删除操作前必须确认:除非用户明确要求,禁止使用
-q 跳过确认
- 禁止在日志或输出中暴露 access-key / secret-key
- 上传公共读文件(
--public)前需向用户确认,避免意外公开敏感文件
- 操作多个文件时先
ls 确认目标,再执行写/删操作
常见场景
上传构建产物到 OSS
aliyun-oss-cli upload dist/ -d -p releases/v1.0.0/ --profile default
生成临时分享链接
aliyun-oss-cli sign docs/report.pdf -e 7200
清理过期文件
aliyun-oss-cli ls old-prefix/ -l
aliyun-oss-cli delete old-prefix/file1.txt old-prefix/file2.txt