Google app engine 使用谷歌云控制台在谷歌云存储中的文件夹之间移动文件

Google app engine 使用谷歌云控制台在谷歌云存储中的文件夹之间移动文件,google-app-engine,google-cloud-storage,google-cloud-console,Google App Engine,Google Cloud Storage,Google Cloud Console,我已经使用谷歌云控制台将几个文件上传到谷歌云存储的同一个文件夹中。我现在想将几个文件移动到谷歌云存储中新创建的文件夹中,但我看不到如何通过谷歌云控制台实现这一点。我通过gsutil上的命令提示符说明找到了移动文件的说明。但是,我对命令行界面不太熟悉,无法让gsutil在我的机器上工作 有没有办法通过谷歌云控制台将谷歌云存储中的文件从一个文件夹移动到另一个文件夹?目前没有办法通过谷歌云控制台实现这一点 因为Google云存储中的文件夹实际上只是平面名称空间中的占位符对象,所以不可能对文件夹进行原子

我已经使用谷歌云控制台将几个文件上传到谷歌云存储的同一个文件夹中。我现在想将几个文件移动到谷歌云存储中新创建的文件夹中,但我看不到如何通过谷歌云控制台实现这一点。我通过
gsutil
上的命令提示符说明找到了移动文件的说明。但是,我对命令行界面不太熟悉,无法让
gsutil
在我的机器上工作


有没有办法通过谷歌云控制台将谷歌云存储中的文件从一个文件夹移动到另一个文件夹?

目前没有办法通过谷歌云控制台实现这一点

因为Google云存储中的文件夹实际上只是平面名称空间中的占位符对象,所以不可能对文件夹进行原子移动或重命名,这就是为什么此场景比在本地文件系统(具有分层名称空间)中移动文件夹更复杂的原因。这就是为什么需要一个更复杂的工具,比如
gsutil

更新:在谷歌云控制台站点中提供一个终端,而无需手动创建虚拟机;它附带了预安装和预认证的
gsutil
和谷歌云SDK


<强>先前的答案:如果您的计算机上有问题安装<代码> GSUTIL<代码>,请考虑以下方法:

  • 使用谷歌提供的Debian映像启动一个
    f1 micro
    实例,该映像将预先安装
    gsutil

  • 使用SSH按钮通过浏览器界面连接到它(如果已安装并可用,也可以使用
    gcutil
    gcloud
    命令)

  • 运行
    gcloud auth login——在实例中不启动浏览器。它将为您提供一个URL,供您使用浏览器打开。打开它后,授予OAuth权限,它将显示一个代码。将该代码粘贴回运行该命令的命令行窗口,以便它获取身份验证令牌

  • 按照Travis Hobrla的建议运行命令:

    gsutil mv gs://bucket/source object gs://bucket/dest object

  • 使用完
    gsutil
    后,单击VM实例详细信息页面顶部的
    delete
    按钮删除实例。确保选中同一VM实例页面上标记为“删除实例时删除引导磁盘”的框,这样您就不会留下孤立磁盘,您将为此收取费用

    您还可以在“VM实例”选项卡正下方的“磁盘”选项卡上浏览持久磁盘,并手动删除其中的磁盘,或者确保将来没有孤立磁盘


  • 考虑到一个
    f1 micro
    实例的成本为0.013美元/小时,这样做的成本应该不到一便士,因为您只需要在实例存在时付费。

    谷歌云存储现在具有使用云控制台将文件从一个文件夹/存储桶移动到另一个文件夹/存储桶的功能。为此,只需选择文件,单击3个垂直点即可获得移动选项。选择要移动文件的目标文件夹/存储桶


    作为一个附带问题,让gsutil在您的机器上工作会遇到什么问题?您要执行的操作的命令行相当简单:gsutil mv gs://bucket name/source folder gs://bucket name/destination folder name谢谢您的后续操作。我的大部分问题都是由于我对命令行编程一无所知。我是基于MacOS的。我按照说明在我的主目录中安装gsutil。最初的几个命令(安装、添加到路径、重新启动)似乎起作用。当我重新启动shell并尝试更新和/或配置命令时,我收到一条“command not found”消息。因此,我无法进行身份验证或执行任何其他操作。命令行确实需要一些时间来适应。如果您能够找到gsutil安装目录相对于主目录的位置,那么在新的终端中,您应该能够从shell中运行“~/thatdirectory/gsutil your command”。非常感谢您愿意帮助那些显然深入我的人。。。我试图按照您的指示操作,并收到以下错误消息:kelly_kellydmyers_com@gsutil:~$gsutil mv gs://diabetes-2014/qd81\u diab\u px\u fact\u 201402.txt.gz gs://diabetes-201 4/px复制gs://diabetes-2014/qd81\u diab\u px\u fact\u 201402.txt.gz[内容类型=应用程序/x-gzip]。。。AccessDeniedException:403权限不足kelly_kellydmyers_com@gsutil:~$@Kelly我向你道歉。首先,您必须在实例中运行
    gcloud auth login
    ,并按照其说明操作。我刚刚试过这个来确认,它对我有效。我会更新上面的说明和更多细节。成功!非常感谢你。我真的很感谢你的帮助。最后一个补救问题,我是否只需单击我在google开发者控制台上创建的实例中的“删除”按钮来停止会话?Thanks@Kelly是,单击
    删除
    按钮即可。但在执行此操作之前,请确保选中同一VM实例页面上标记为“删除实例时删除引导磁盘”的框,这样您就不会留下孤立磁盘(您将为此收取费用)。您还可以在“VM实例”选项卡正下方的“磁盘”选项卡上浏览您的永久磁盘,并在那里手动删除磁盘,或者确保将来没有孤立磁盘。太好了。谢谢我不知道该怎么处理这个磁盘。