1

我开始在 windows xp 上使用 gsutil。我在 c:\Python27 中有 Python 2.7。我已经设置并且可以在我的 Windows PowerShell ide 中成功运行包括 gsutil 在内的 Python 脚本来列出我的文件。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'

任何人都可以帮忙吗?

4

2 回答 2

1

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

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

或者

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
于 2013-09-18T17:46:30.360 回答
0

我有同样的问题。

他们让我工作的方式很简单,不包括“:”他们不允许在这种类型的路径上。

例如尝试这样的事情:

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

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

希望能帮助到你。

于 2015-02-17T14:51:06.400 回答