Cygwin 中的 Hadoop、gcloud 实用程序、bdutils。无连接,无法识别命令

Posted

技术标签:

【中文标题】Cygwin 中的 Hadoop、gcloud 实用程序、bdutils。无连接,无法识别命令【英文标题】:Hadoop, gcloud utilities, bdutils within Cygwin. No connection, commands not recognized 【发布时间】:2015-02-02 23:21:40 【问题描述】:

不确定 Hadoop 论坛在哪里……这似乎是最接近的选择。

我正在尝试设置集群以运行 Hortonworks 平台,这意味着我需要 bdutil 工作。

但是,虽然我可以在引导文件夹中运行 install.py 脚本,但我无法让任何 gcloud 或 bdutil 函数工作。我最初认为 64 位 python 安装和 32 位 GC SDK 之间存在不兼容...所以,安装了 32 位 Python 2.7 并通过临时删除具有 64 位安装路径的环境变量来强制 Cygwin 使用此路径.

以下是我的错误日志,以及有关目录内容的信息。协助将不胜感激。我已经为此奋斗了三天。

--KNOWS WHICH PYTHON TO USE
$ which python/cygdrive/c/Users/MJ/Anaconda/python

--INSIDE FOLDER WITH PYTHON SCRIPTS
MJ@Speed_rAcer ~/google-cloud-sdk/bin/bootstrapping
$ ls
__init__.py        bq.py      install.py         setup.py
bootstrapping.py   gcutil.py  prerun.py          setup.pyc
bootstrapping.pyc  gsutil.py  print_env_info.py

--RUNS PYTHON SCRIPT (install.py).  DIDN'T LET ME PICK Y OR N BUT SAYS IT'S CONFIGURED
MJ@Speed_rAcer ~/google-cloud-sdk/bin/bootstrapping
$ python install.py

Do you want to help improve the Google Cloud SDK (Y/n)?

All components are up to date.

Update %PATH% to include Cloud SDK binaries? (Y/n)?

The Google Cloud SDK is currently in developer preview. To help improve the
quality of this product, we collect anonymized data on how the SDK is used.
You may choose to opt out of this collection now (by choosing 'N' at the below
prompt), or at any time in the future by running the following command:
    gcloud config set --scope=user disable_usage_reporting true


This will install all the core command line tools necessary for working with
the Google Cloud Platform.

The following directory has been added to your PATH.
  C:\Users\MJ\home\google-cloud-sdk\bin

Create a new command shell for the changes to take effect.


For more information on how to get started, please visit:
  https://developers.google.com/cloud/sdk/gettingstarted


--NEW SHELL.  SHOWING COMMANDS I SHOULD BE ABLE TO RUN (first is gcloud.cmd)
MJ@Speed_rAcer ~/google-cloud-sdk/bin
$ ls
bootstrapping  gcloud - Copy.cmd  gcutil.cmd                 gsutil.cmd
bq.cmd         gcloud.cmd         git-credential-gcloud.cmd  sdk

--TRY ONE TO EXECUTE COMMAND
$ ./gcloud auth login
-bash: ./gcloud: No such file or directory

--TRY TWO TO EXECUTE COMMAND
MJ@Speed_rAcer ~/google-cloud-sdk/bin
$ gcloud auth login
-bash: gcloud: command not found

【问题讨论】:

【参考方案1】:

适用于 Windows 的 Cloud SDK 说明适用于 Windows,其中“命令外壳”表示 cmd.exe。 bash 提示符处的gcloud auth login 指示 bash 在 PATH 上查找可执行文件 gcloud。您为 Windows 安装了 gcloud,因此安装了 gcloud.cmd。 bash 不做基于后缀的命令搜索,所以在搜索gcloud 时找不到gcloud.cmd

您可以执行以下操作之一来让 bash 识别 gcloud 命令:

    运行此安装 CygWin shell 脚本: gcloud.cmd components update 运行:alias gcloud='cmd /c gcloud.cmd' 在gcloud.cmd所在目录下运行: echo cmd /c gcloud.cmd \"\$@\" > gcloud chmod +x gcloud 运行cmd 以获取Windows 命令提示符。您将不再使用 bash。

【讨论】:

我喜欢调用 cmd 的 shell 脚本的技巧!不过,这不会自动传递参数 - 我为此添加了 $@,希望您不要介意编辑。 感谢您的编辑。这将适用于简单的参数(没有嵌入的“或”)。

以上是关于Cygwin 中的 Hadoop、gcloud 实用程序、bdutils。无连接,无法识别命令的主要内容,如果未能解决你的问题,请参考以下文章

安装cygwin中的make时出现了一下错误,应该怎么办啊,求大神解决!

Windows平台安装及配置Hadoop(不借助cygwin)

在Windows上运行Hadoop,配置好java,cygwin,hadoop之后,要怎么做

cygwin下安装hadoop,在启动namenode时出现下面问题

win10上部署Hadoop-2.7.3——非Cygwin非虚拟机

hadoop(两台win7+cygwin+hadoop)启动后日志都没有错,运行一个程序出错了: