如何在GCS(Google Cloud Storage)与Cloud Shell之间传输文件和文件夹
GCS与Cloud Shell文件/文件夹互传操作方法
1. 命令行工具操作(最推荐,稳定高效)
Cloud Shell默认已预装gcloud storage和gsutil两款官方工具,且自动完成GCP身份认证,无需额外配置即可直接访问同项目下的GCS资源。
1.1 从Cloud Shell上传到GCS
- 上传单个文件:
命令格式:gcloud storage cp <本地文件路径> gs://<目标存储桶名称>/<目标存放路径>
示例:gcloud storage cp ~/report.pdf gs://company-doc-bucket/2024/
也可使用旧版gsutil命令:gsutil cp ~/report.pdf gs://company-doc-bucket/2024/ - 上传整个文件夹:
需添加递归参数-r,命令格式:gcloud storage cp -r <本地文件夹路径> gs://<目标存储桶名称>/<目标存放路径>
示例:gcloud storage cp -r ~/project-code/ gs://company-backup-bucket/dev/
对应gsutil命令:gsutil cp -r ~/project-code/ gs://company-backup-bucket/dev/
1.2 从GCS下载到Cloud Shell
- 下载单个文件:
命令格式:gcloud storage cp gs://<存储桶名称>/<文件路径> <本地目标存放路径>
示例:gcloud storage cp gs://company-doc-bucket/2024/report.pdf ~/downloads/
对应gsutil命令:gsutil cp gs://company-doc-bucket/2024/report.pdf ~/downloads/ - 下载整个文件夹:
需添加递归参数-r,命令格式:gcloud storage cp -r gs://<存储桶名称>/<文件夹路径> <本地目标存放路径>
示例:gcloud storage cp -r gs://company-backup-bucket/dev/project-code/ ~/restore/
对应gsutil命令:gsutil cp -r gs://company-backup-bucket/dev/project-code/ ~/restore/
额外技巧:如果需要同步两个路径的差异内容,可使用
rsync命令替代cp,仅传输有变更的文件节省传输时间,示例:gcloud storage rsync ~/local-dir gs://my-bucket/sync-dir
2. 可视化界面操作(适合小文件临时使用)
不熟悉命令行的用户可以直接通过界面完成操作:
- 从GCS下载到Cloud Shell:在Google Cloud控制台进入对应GCS存储桶页面,找到目标文件/文件夹,点击操作列的「下载」按钮,在弹出选项中选择「下载到Cloud Shell」,确认本地目标路径即可完成下载。
- 从Cloud Shell上传到GCS:点击Cloud Shell左侧文件浏览器右上角的更多操作按钮,选择「上传到GCS」,选中需要上传的文件/文件夹,再选择目标GCS存储桶路径即可完成上传。
内容的提问来源于stack exchange,提问作者Super Kai - Kazuya Ito
相关产品推荐
相关产品推荐

