如何使用gsutil下载文件

时间:2013-09-18 17:37:06

标签: powershell

我开始在windows xp上使用gsutil。我在c:\ Python27中使用了Python 2.7。我已经设置并可以在我的Windows PowerShell中成功运行Python脚本,包括gsutil,以便列出我的文件。 EG gsutil ls -L gs:// mybucket显示我的文件存在且正确。开发人员指南建议以下示例从存储中下载文件

    gsutil cp gs://cats/*.jpg file://pets/

我不明白这里的语法。我在存储gs://pussy/debug.txt中有一个文件,我想将其下载到c:\ test \ debug.txt 我应该怎么写这个命令。 我试过了

     gsutil cp gs://pussy/debug.txt file c:\test\

但是它给了我以下错误

    At line:1 char:7
    + gsutil <<<<  cp gs://pussy/debug.txt file c:\test\
    + CategoryInfo          : NotSpecified: (Copying gs://pussy/debug.txt...:S 
    tring) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

    Traceback (most recent call last):
    File "c:\gsutil\gsutil.py", line 88, in <module>
    sys.exit(gslib.__main__.main())
    File "c:\gsutil\gslib\__main__.py", line 199, in main
    parallel_operations)
    File "c:\gsutil\gslib\__main__.py", line 287, in _RunNamedCommandAndHandleExc
    eptions
    parallel_operations)
    File "c:\gsutil\gslib\command_runner.py", line 188, in RunNamedCommand
    return command_inst.RunCommand()
    File "c:\gsutil\gslib\commands\cp.py", line 2273, in RunCommand
    shared_attrs)
    File "c:\gsutil\gslib\command.py", line 803, in Apply
    use_thr_exc_handler=ignore_subprocess_failures)
    File "c:\gsutil\gslib\command.py", line 908, in _ApplyThreads
    return_value = func(args)
    File "c:\gsutil\gslib\commands\cp.py", line 2143, in _CopyFunc
    self._PerformCopy(exp_src_uri, dst_uri))
    File "c:\gsutil\gslib\commands\cp.py", line 1560, in _PerformCopy
    src_key = src_uri.get_key(False, download_headers)
    File "c:\gsutil\third_party\boto\boto\storage_uri.py", line 189, in get_key
    key = bucket.get_key(self.object_name, headers, version_id)
    File "c:\gsutil\third_party\boto\boto\file\bucket.py", line 92, in get_key
    fp = open(key_name, 'rb')
    IOError: [Errno 2] No such file or directory: u'file'

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

第一个命令是假定unix路径。您需要执行以下操作才能在Windows上使用它:

gsutil cp gs://folder/filename c:\destfolder\file

OR

gsutil cp gs://folder/filename file:///c|/destfolder/file

甚至可能

gsutil cp 'gs://folder/filename' 'file:///c|/destfolder/file'

或使用变量

$src = 'gs://folder/filename';
$dest = 'file:///c:/destfolder/file'
gsutil cp $src $dest

答案 1 :(得分:0)

我有同样的问题。

他们让我的工作很简单,不包括&#34;:&#34;他们不允许这种类型的道路。

例如尝试这样的事情:

python gsutil cp -r gs://pubsite_prod_rev_XXXXXXXXXXXXXXXXXX/reviews/reviews_com.YYYYY.ZZZZ_201501.csv' test /&#39;

它将创建一个名为test的文件夹并将文件保存在

希望它有所帮助。