如何告诉gsutil file upload命令“dst_url”实际上是一个文件,而不是一个目录?

时间:2018-06-01 20:27:58

标签: gsutil

在GCS存储桶上,我从Web控制台上传了一个名为fileName的文件,并创建了一个具有相同fileName名称的目录。因此,GCS存储桶在其根目录中包含名为fileName的文件和具有相同名称的目录。

现在,当我尝试通过fileName命令通过

更新gsutil文件时

gsutil cp localFile gs://bucketname/fileName

其中localFile是我本地计算机上的文件,而gs://bucketname/fileName因此是dest_url参数,而不是覆盖GCS fileName文件,名称为{的新文件{1}}在GCS目录中创建,名称为fileName,生成GCS文件fileName

我在gs://bucketname/fileName/fileName命令中找不到一个选项,表示提供的gsutil应该被解释为文件而不是目录。

我错过了什么吗?有什么解决方法吗?

1 个答案:

答案 0 :(得分:0)

一种解决方法是使用:

gsutil rsync -d . gs://bucketname

此命令将保留文件名目录的内容,但将更改文件名文件的内容;实际上,此命令会将本地路径的内容(在本例中为“ dot”:指定的“当前”路径)与存储桶的内容同步,因此,如果您只是更改文件名文件的内容在本地系统中,同步将导致GCS存储桶中文件名文件的“覆盖”而不会影响文件名目录。