11

我正尝试在OSX上安装Google Cloud SDK,并执行此node.js教程(https://cloud.google.com/nodejs/getting-started/hello-world),并且遇到未找到gcloud的问题。这可能只是简单的设置或保存文件的位置。已安装Google Cloud SDK但无法访问gcloud

我已经阅读了大量的其他帖子,但一直没能解决这个问题。以下是所有步骤/问题:

我已经在开发控制台中创建了一个项目。

安装云SDK

MacBook-Pro-2:~ nico$ curl https://sdk.cloud.google.com | bash 

然后通过流程去

Directory to extract under (this will create a directory google-cloud-sdk) (/Users/nico): 

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

Modify profile to update your $PATH and enable bash completion? (Y/n)? y 

Enter path to an rc file to update, or leave blank to use [/Users/nico/.bash_profile]: 

然后我试图验证:

MacBook-Pro-2:~ nico$ gcloud auth login 
-bash: gcloud: command not found 

然后,我走进云SDK bin目录

MacBook-Pro-2:~ nico$ cd google-cloud-sdk/bin 
MacBook-Pro-2:bin nico$ ./gcloud auth login 

验证成功

MacBook-Pro-2:bin nico$ ./gcloud config set project helloworld-project 

设置项目是成功的

MacBook-Pro-2:bin nico$ ./gcloud components update app 

ERROR: (gcloud.components.update) Your current working directory is inside the Cloud SDK install root: /Users/nico/google-cloud-sdk. 
In order to perform this update, run the command from outside of this directory. 

所以后来我搬出该目录

MacBook-Pro-2:test_project nico$ gcloud components update app 
-bash: gcloud: command not found 

,现在它不工作,我必须在某处设置gcloud,以便全球访问?我如何更新它并访问gcloud命令行工具?

回答

0

在我的〜/ .bash_profile中的菜单我有一个错误,在上面我有这样一行:

if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi source /Users/nico/.bash_profile 

其中又抛出一个错误,并与gcloud混乱,奇怪的是,其他的命令行变量这个错误工作得很好。

一旦我删除该行gcloud工作正常。

12

纵观安装工具的输出:

Enter path to an rc file to update, or leave blank to use [/Users/nico/.bash_profile]: 

...似乎更新“/Users/nico/.bash_profile”,而Mac OS X的安装工具依赖于“/用户/尼科/.profile“进行配置。将更改复制到“/Users/nico/.bash_profile”到“/Users/nico/.profile”,然后关闭并重新启动终端以使更改生效。

在新的外壳,你可以看到,如果“gcloud”使用该命令规定:

which gcloud 

应该输出:

/Users/nico/google-cloud-sdk/bin/gcloud 

如果不工作,那么我d建议手动更新您的PATH。要做到这一点,编辑〜/ .profile文件:

nano ~/.profile 

,然后添加下面一行在最后:

export PATH="$HOME/google-cloud-sdk/bin:$PATH" 

,并重新启动你的shell。请注意,如果您使用的是不是内置终端的shell,则可能需要编辑其他文件(例如〜/ .bashrc或〜/ .bash_profile以用于定制BASH安装,以及各种其他“rc”如ZSH,CSH等。)来更新你的PATH变量。

如果这仍然没有工作,我会通过键入建议调试:

echo "$PATH" 

...这样你至少可以看到当前有哪些路径设置为。

+1

谢谢Michael!我尝试了'哪个gcloud',什么都没有出现,然后我打开'nano〜/ .profile'并添加它(屏幕截图:http://www.screencast.com/t/bEssG5te4n),然后点击^ O。我重新启动终端,仍然没有运气。我还编辑了'〜/ .bash_profile'并将其添加到那里(屏幕截图:http://www.screencast.com/t/jkpNucYZ),但它仍然不起作用。有任何想法吗? – NicoM

+0

愚蠢的问题,但你保存更改? (也就是说,如果你做了“cat〜/ .profile”,那么这个改变还在吗?) –

+0

是的,我救了它。这就是它'MacBook-Pro-2:〜nico $ cat〜/ .profile',它会返回 'export PATH =“$ HOME/google-cloud-sdk/bin:$ PATH”' – NicoM

1

我修改了我的

vi ~/.bash_profile 

,并添加一行到它

source ~/.bashrc 

结束然后你可以注销&登录一次,或运行:

source ~/.bash_profile

添加该行后。

操作系统:Linux流浪汉,Ubuntu的信赖-64 3.13.0-116泛型#163 Ubuntu的

或者简单地运行:

echo "source ~/.bashrc" >> ~/.bash_profile 
source ~/.bash_profile 
which gcloud 

给我

/home/myusername/google/google-cloud-sdk/bin/gcloud