如何将文件夹上传到 Google Cloud?

如何将文件夹上传到 Google Cloud?

如何将完整文件夹上传到我的 Google Cloud Storage?我尝试使用 Cyber​​duck,但无法使用我的 Google 登录信息。对于中等技能水平的 Mac 用户,有什么方法可以轻松上传完整文件夹而不是文件吗?

答案1

您可以使用gsutil cp在终端进行批量上传/下载:

gsutil -m cp -R dir gs://my_bucket

-m标志将执行并行(多线程)复制。

答案2

您可以使用 Google Cloud Console 轻松地从本地计算机上传文件夹,无需特殊工具。

只需点击 Google Cloud Console 中的左侧导航存储 > 云存储 > 浏览器即可:https://console.developers.google.com

创建存储桶或选择现有存储桶

然后点击“上传文件夹”

您将看到一个弹出的侧边栏,通知您上传进度。

答案3

为了完整起见,我将展示如何:

  1. 开始(登录、设置项目)
  2. 上传文件
  3. 列出项目
  4. 下载文件 cp 的替代方法是使用同步这里就不演示了。

启动会话,设置项目并查看当前配置:

gcloud auth login
gcloud config set project PROJECT_ID
gcloud config list

创建要上传的测试树文件夹结构

echo 'test content: foo BAR" > ec2-iamrole.yaml
mkdir -p level1/level2
cp ec2-iamrole.yaml level1
cp ec2-iamrole.yaml level1/level2
rm ec2-iamrole.yaml level1

待上传(存储桶已创建,且文件夹名称为示例)

gsutil -m cp -R level1 gs://my_bucket/sample

要创建存储桶,请检查这里。此外,您无法使用工具命令。您需要使用 GCP UI 或使用客户端库,或者在命令中明确指定它,就像我上面所做的那样。

列表内容:

gsutil ls -r gs://my_bucket/sample/level1

输出:

gs://my_bucket/sample/level1/:
gs://my_bucket/sample/level1/ec2-iamrole.yaml

gs://my_bucket/sample/level1/level2/:
gs://my_bucket/sample/level1/level2/ec2-iamrole.yaml

下载到新文件夹level3

mkdir level3 && cd level3
gsutil -m cp -R gs://docexporter/nov/level1 .

输出:

tree .
.
└── level1
    ├── ec2-iamrole.yaml
    └── level2
        └── ec2-iamrole.yaml

2 directories, 2 files

答案4

您可以转到 Google Drive 网络应用,点击上传图标,然后点击文件夹。或者更好的是,您可以下载Google Drive 桌面应用程序然后只需将所需文件夹复制并粘贴到 Google Drive 文件夹中即可。这样,该文件夹及其所有文件都将与云端同步。

相关内容