> ## Documentation Index
> Fetch the complete documentation index at: https://docs.siflow.cn/llms.txt
> Use this file to discover all available pages before exploring further.

# 上传和下载 OSS 对象

> 了解如何使用 ossctl 上传、下载、拷贝和列出 OSS 对象。

配置 `ossctl` 后，您可以通过命令行上传对象、下载对象、批量拷贝目录或列出存储桶中的对象。

## 操作前确认

* 已创建 OSS 存储桶（Bucket），并已获得访问该存储桶的权限。
* 已获取访问密钥，并完成 `ossctl` 配置。
* 当前环境可以访问存储桶所在地域的 OSS 访问端点。

## 上传对象

### 上传单个对象

使用 `put` 命令上传单个对象。

```bash theme={null}
./ossctl put <LOCAL_FILE> <CONFIGNAME>/<BUCKET>
```

参数说明：

| 参数 | 说明 |
| - | - |
| `<LOCAL_FILE>` | 需要上传的本地文件路径。 |
| `<CONFIGNAME>` | 本地 OSS 访问配置名称。 |
| `<BUCKET>` | 目标存储桶名称。 |

命令执行完成后，可以列出目标存储桶中的对象，确认对象已生成。

### 批量上传目录

使用 `cp` 命令递归上传目录。

```bash theme={null}
./ossctl cp -r <LOCAL_DIR> <CONFIGNAME>/<BUCKET>/
```

参数说明：

| 参数 | 说明 |
| - | - |
| `<LOCAL_DIR>` | 需要上传的本地目录路径。 |
| `<CONFIGNAME>` | 本地 OSS 访问配置名称。 |
| `<BUCKET>` | 目标存储桶名称。 |

命令执行完成后，确认目录中的文件已上传到目标存储桶，且对象路径符合预期。

## 下载对象

### 下载单个对象

使用 `get` 命令下载单个对象。

```bash theme={null}
./ossctl get <CONFIGNAME>/<BUCKET>/<OBJECT_NAME> <LOCAL_FILE>
```

参数说明：

| 参数 | 说明 |
| - | - |
| `<CONFIGNAME>` | 本地 OSS 访问配置名称。 |
| `<BUCKET>` | 源存储桶名称。 |
| `<OBJECT_NAME>` | 需要下载的对象名称或对象路径。 |
| `<LOCAL_FILE>` | 下载后的本地文件路径。 |

命令执行完成后，在本地路径确认文件已生成。

### 批量下载目录

使用 `cp` 命令递归下载目录。

```bash theme={null}
./ossctl cp --recursive <CONFIGNAME>/<BUCKET>/<OBJECT_PATH> <LOCAL_DIR>
```

参数说明：

| 参数 | 说明 |
| - | - |
| `<CONFIGNAME>` | 本地 OSS 访问配置名称。 |
| `<BUCKET>` | 源存储桶名称。 |
| `<OBJECT_PATH>` | 需要下载的对象路径。 |
| `<LOCAL_DIR>` | 下载到的本地目录路径。 |

命令执行完成后，在本地目录确认文件结构和文件数量符合预期。

## 列出对象

使用 `ls` 命令列出存储桶中的对象。

```bash theme={null}
./ossctl ls <CONFIGNAME>/<BUCKET>
```

参数说明：

| 参数 | 说明 |
| - | - |
| `<CONFIGNAME>` | 本地 OSS 访问配置名称。 |
| `<BUCKET>` | 需要查看的存储桶名称。 |

如果上传、下载或列出对象失败，请先检查本地路径、对象路径、存储桶名称、访问密钥、存储桶授权和网络连通性。如果仍无法解决，请记录命令、错误信息和存储桶名称，并联系技术支持。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.