关于 tigris-objects
tigris-objects 是用于管理 Tigris 存储桶和对象的命令行技能,涵盖文件操作、元数据查看及临时访问链接生成。
主要功能
- 01列出存储桶和对象
- 02在本地与远程路径间复制文件
- 03移动和删除对象
- 04查看元数据与存储统计
- 05生成预签名 URL
适用场景
- 01上传或下载文件和目录
- 02重命名或删除已存储对象
- 03无需凭据临时分享对象
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ tigrisdata/ tigris-agents-plugins --skill tigris-objects安装后在 Claude Code 中输入/tigris-objects确认已加载。
详细介绍
Tigris 对象操作
快速参考
| 命令 | 描述 |
|---|---|
tigris ls [path] | 列出存储桶/前缀下的对象 |
tigris cp <src> <dest> | 在本地与远程之间或远程路径之间复制文件 |
tigris mv <src> <dest> | 在 Tigris 中移动/重命名对象 |
tigris rm <path> | 删除对象或文件夹 |
tigris touch <path> | 创建一个空对象 |
tigris stat <path> | 显示对象元数据或存储统计信息 |
tigris presign <path> | 生成预签名 URL |
tigris objects list <bucket> | 列出对象(底层操作) |
tigris objects get <bucket> <key> | 下载对象(底层操作) |
tigris objects put <bucket> <key> <file> | 上传对象(底层操作) |
tigris objects delete <bucket> <key> | 删除对象(底层操作) |
tigris objects set <bucket> <key> | 更新对象设置(底层操作) |
URI 方案
远程路径使用 t3://bucket/key 或 tigris://bucket/key。也接受不带协议的 bucket/key 路径。
Unix 风格命令(主要接口)
tigris ls [path](别名:list)
列出所有存储桶(不带参数时),或列出存储桶/前缀路径下的对象。
tigris ls # list all buckets
tigris ls my-bucket # list objects in bucket
tigris ls my-bucket/images/ # list objects under prefix
tigris ls t3://my-bucket/prefix/
| 标志 | 别名 | 描述 | 默认值 |
|---|---|---|---|
--snapshot-version | --snapshot | 从指定的存储桶快照读取 | |
--format | -f | 输出格式(json、table、xml) | table |
--json | 以 JSON 格式输出 |
tigris cp <src> <dest>(别名:copy)
在本地文件系统与 Tigris 之间,或在 Tigris 内的路径之间复制文件。至少一端必须是远程 t3:// 路径。请为通配符模式加引号,以防止 Shell 展开。
tigris cp ./file.txt t3://my-bucket/file.txt # upload
tigris cp t3://my-bucket/file.txt ./local-copy.txt # download
tigris cp t3://my-bucket/src/ t3://my-bucket/dest/ -r # remote-to-remote
tigris cp ./images/ t3://my-bucket/images/ -r # recursive upload
| 标志 | 别名 | 描述 |
|---|---|---|
--recursive | -r | 递归复制目录 |
--format | -f | 输出格式(json、table;默认:table) |
--json | 以 JSON 格式输出 |
tigris mv <src> <dest>(别名:move)
在 Tigris 内移动(重命名)对象。源路径和目标路径都必须是远程路径。请为通配符模式加引号,以防止 Shell 展开。
tigris mv t3://my-bucket/old.txt t3://my-bucket/new.txt -f
tigris mv t3://my-bucket/old-dir/ t3://my-bucket/new-dir/ -rf
tigris mv my-bucket/a.txt my-bucket/b.txt -f
| 标志 | 别名 | 描述 |
|---|---|---|
--recursive | -r | 递归移动目录 |
--force | -f | 跳过确认提示 |
--format | 输出格式(json、table;默认:table) | |
--json | 以 JSON 格式输出 |
tigris rm <path>(别名:remove)
从 Tigris 中删除存储桶、文件夹或对象。仅输入存储桶名称会删除存储桶本身。请用引号括住通配符模式,以防止 Shell 展开。
tigris rm t3://my-bucket/file.txt -f
tigris rm t3://my-bucket/folder/ -rf
tigris rm t3://my-bucket -f # deletes the bucket
tigris rm "t3://my-bucket/logs/*.tmp" -f # wildcard delete
| 标志 | 别名 | 说明 |
|---|---|---|
--recursive | -r | 递归删除目录 |
--force | -f | 跳过确认提示 |
--format | 输出格式(json、table;默认:table) | |
--json | 输出为 JSON |
tigris touch <path>
在给定的存储桶/键路径下创建一个空(零字节)对象。
tigris touch my-bucket/placeholder.txt
tigris touch t3://my-bucket/logs/
| 标志 | 别名 | 说明 |
|---|---|---|
--format | -f | 输出格式(json、table;默认:table) |
--json | 输出为 JSON |
tigris stat [path]
显示存储统计信息(不带参数)、存储桶信息或对象元数据。
tigris stat # overall storage stats
tigris stat t3://my-bucket # bucket info
tigris stat t3://my-bucket/my-object.json # object metadata
| 标志 | 别名 | 说明 | 默认值 |
|---|---|---|---|
--snapshot-version | --snapshot | 从指定的存储桶快照读取 | |
--format | -f | 输出格式(json、table、xml) | table |
--json | 输出为 JSON |
预签名 URL
tigris presign <path>
生成预签名 URL,以便无需凭据即可临时访问对象。
tigris presign my-bucket/file.txt
tigris presign t3://my-bucket/report.pdf --method put --expires-in 7200
tigris presign my-bucket/image.png --format json
tigris presign my-bucket/data.csv --access-key tid_AaBb
| 标志 | 别名 | 说明 | 默认值 |
|---|---|---|---|
--method | -m | HTTP 方法(get、put) | get |
--expires-in | -e | URL 有效期(秒) | 3600 |
--access-key | 用于签名的访问密钥 ID(如果未提供,则从凭据中解析) | ||
--format | -f | 输出格式(url、json) | url |
--json | 输出为 JSON |
使用场景:
- 临时分享私有对象(GET)
- 在不暴露凭据的情况下从客户端上传(PUT)
低级 objects 子命令
用于以编程方式精细控制单个对象。
tigris objects list <bucket>(别名:l)
列出存储桶中的对象,可选择按键前缀筛选。
tigris objects list my-bucket
tigris objects list my-bucket --prefix images/
tigris objects list my-bucket --json
| 标志 | 别名 | 说明 |
|---|---|---|
--prefix | -p | 按键前缀筛选对象 |
--snapshot-version | --snapshot | 从指定的存储桶快照读取 |
--format | -f | 输出格式(json、table、xml;默认:table) |
--json | 输出为 JSON |
tigris objects get <bucket> <key> (别名:g)
按键下载对象。默认输出到标准输出,或使用 --output 保存到文件。
tigris objects get my-bucket config.json
tigris objects get my-bucket archive.zip --output ./archive.zip --mode stream
| 标志 | 别名 | 描述 |
|---|---|---|
--output | -o | 输出文件路径(未指定时输出到标准输出) |
--mode | -m | 响应模式:string(加载到内存)或 stream(分块写入) |
--snapshot-version | --snapshot | 从指定的存储桶快照读取 |
--format | -f | 输出格式(json、table;默认值:table) |
--json | 以 JSON 格式输出 |
tigris objects put <bucket> <key> <file> (别名:p)
将本地文件上传为对象。除非另行指定,否则会根据扩展名自动检测内容类型。
tigris objects put my-bucket report.pdf ./report.pdf
tigris objects put my-bucket logo.png ./logo.png --access public --content-type image/png
| 标志 | 别名 | 描述 | 默认值 |
|---|---|---|---|
--access | -a | 访问级别(public、private) | private |
--content-type | -t | 内容类型(省略时自动检测) | |
--format | -f | 输出格式(json、table、xml) | table |
--json | 以 JSON 格式输出 |
tigris objects delete <bucket> <key> (别名:d)
按键删除一个或多个对象。接受以逗号分隔的键。
tigris objects delete my-bucket old-file.txt --force
tigris objects delete my-bucket file-a.txt,file-b.txt --force
| 标志 | 描述 |
|---|---|
--force | 跳过确认提示 |
--format / -f | 输出格式(json、table;默认值:table) |
--json | 以 JSON 格式输出 |
tigris objects set <bucket> <key> (别名:s)
更新现有对象的设置,例如访问级别或键名。
tigris objects set my-bucket my-file.txt --access public
tigris objects set my-bucket my-file.txt --access private
| 标志 | 别名 | 描述 |
|---|---|---|
--access | -a | 访问级别(public、private)——必填 |
--new-key | -n | 将对象重命名为新键 |
--format | -f | 输出格式(json、table;默认值:table) |
--json | 以 JSON 格式输出 |
常见模式
# Recursive upload
tigris cp ./dist/ t3://my-bucket/static/ -r
# Download an entire directory
tigris cp t3://my-bucket/backups/ ./local-backups/ -r
# Wildcard delete (quote the pattern!)
tigris rm "t3://my-bucket/logs/*.tmp" -rf
# Generate a presigned upload URL for client-side uploads
tigris presign my-bucket/user-uploads/photo.jpg --method put --expires-in 600
评论
支持 Markdown