aliyun oss sync dist 使用的 有没有 / 区别
这2个区别是:
aliyun oss sync dist oss://target
aliyun oss sync dist/ oss://target
aliyun oss sync dist oss://target
aliyun oss sync dist/ oss://target
这两个命令的区别非常关键,尤其是在使用 aliyun oss sync
的时候会影响同步的目录结构:
命令对比:
1. aliyun oss sync dist oss://target
- 含义:同步整个
dist
目录(包括目录名本身)到 OSS 的target
目录。 - 效果:
- OSS 上会变成:
oss://target/dist/index.html oss://target/dist/css/style.css ...
- OSS 上会变成:
2. aliyun oss sync dist/ oss://target
- 含义:同步
dist
目录下的内容(不包括dist
目录本身)到 OSS 的target
目录。 - 效果:
- OSS 上会变成:
oss://target/index.html oss://target/css/style.css ...
- OSS 上会变成:
总结区别:
| 命令 | 是否包含 dist
目录本身 | OSS 上的路径举例 |
|-------------------------------|----------------------------|-------------------------------------------|
| aliyun oss sync dist oss://target
| ✅ 是 | oss://target/dist/xxx
|
| aliyun oss sync dist/ oss://target
| ❌ 否 | oss://target/xxx
(直接同步内容) |
使用建议:
- ✅ 想同步内容但不保留
dist
文件夹本身结构 → 用dist/
- ✅ 想同步整个
dist
文件夹作为子目录 → 用dist
如果你是在构建部署(如前端打包)后上传到 OSS 静态托管页面,通常用的是:
aliyun oss sync dist/ oss://your-bucket-name/
这样打包输出会直接出现在根路径,而不会多一层 /dist
。
要不要我帮你写个自动检测 dist
是否存在并上传的脚本?