Подтвердить что ты не робот

Команда gcloud не найдена - при установке Google Cloud SDK

Я нахожусь на mac и пытаюсь установить Google Cloud SDK (включая утилиту командной строки gcloud), используя эту команду в терминале

curl https://sdk.cloud.google.com | bash

как показано на https://cloud.google.com/sdk/

Он дошел до конца и закончил, но даже после перезагрузки моей оболочки команда gcloud все еще говорит, что она не найдена.

Почему эта установка не работает?

4b9b3361

Ответ 1

Итак, ниже мое предыдущее решение этой проблемы, но, оказывается, оно не является постоянным. Он работает, но каждый раз, когда вы перезапускаете терминал, вам придется делать то же самое, что не практично.

Поэтому я предлагаю вам удалить текущий каталог google-cloud-sdk и просто выполнить повторную установку. Обязательно (как сказал Захари) ответить да (Y) на приглашение Modify profile to update your $PATH and enable bash completion? (Y/n).

Вот мой старый ответ, но просто повторите установку:

I had the same problem, `gcloud` wasn't working for me.
But then, in the same directory as my `google-cloud-sdk` folder which I had just installed (my `home` directory), I found this file called `test`.
Inside this `test` file I found two commands:


    # The next line updates PATH for the Google Cloud SDK.
    source '[path-to-my-home]/google-cloud-sdk/path.bash.inc'
    # The next line enables bash completion for gcloud.
    source '[path-to-my-home]/google-cloud-sdk/completion.bash.inc'

After I ran these two `source` commands in terminal, `gcloud` worked!

Ответ 2

То же самое здесь, я пытаюсь

source ~/.bashrc

Затем он работал

Ответ 3

Это работало для меня:

source ~/.bash_profile

Ответ 4

В Mac/Linux вам нужно ввести следующую запись в ~/.bashrc:

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

Ответ 5

У меня была эта проблема сегодня, и добавив sudo к install command исправил мою проблему на maxOS Sierra!

sudo ./google-cloud-sdk/install.sh

Ответ 6

Я знаю, что на этот вопрос был дан ответ, но вот мои два цента. После установки gcloud вам необходимо перезапустить оболочку, прежде чем вы сможете выполнить команду gcloud.

Как вы это делаете, в основном зависит от файла, в котором вы сохраняете конфигурацию вашей оболочки. Большинство файлов: .bashrc_profile, .bashrc, .zshrc.

Теперь вы можете перезапустить с помощью

source ~/.bashrc_profile

Вы можете заменить файл на файл, который у вас есть.

Или, если вам не нравится файл, который у вас есть, на Mac или Linux вы можете перезапустить оболочку.

exec -l $SHELL

Ответ 7

При установке SDK я использовал этот метод:

curl https://sdk.cloud.google.com | bash

При использовании этого метода от оригинального автора убедитесь, что вы приняли настройки безопасности в настройках Mac, чтобы разрешить загрузку приложений из магазина приложений и идентифицированных разработчиков.

Ответ 8

Вам просто нужно выполнить эту команду как root

$ curl https://sdk.cloud.google.com | bash

Перезагрузите терминал и его. Теперь все команды должны выполняться как root

Ответ 9

Как установить GCloud и всегда работает после перезагрузки в Mac OS HIGH Sierra:

  1. Скачать установочный пакет здесь

  2. Получил файл и закинул в свою папку

  3. Откройте терминал, перейдите в папку с файлом и введите команду:

     ./google-cloud-sdk/install.sh
    
  4. Msgstr "Изменить профиль, чтобы обновить ваш $PATH и включить завершение bash?"
    да

  5. Введите этот путь для изменения:
    /Users/USERNAME_COMPUTER/.bashrc
  6. После завершения установки введите следующее:

      source ~/.bashrc
    
  7. Введите это, чтобы проверить установку gcloud:

    gcloud - -version

  8. Откройте окно нового терминала cmd+n НЕ ЗАКРЫТЬ СТАРОЕ ОКНО и введите в новом окне gcloud version

    если: "команда не найдена", переходите к шагу 9

    еще: поздравляю GCloud с работой в терминале

  9. Вернитесь в старое окно и введите echo $PATH и скопируйте путь в GCloud

  10. Откройте BASH_PROFILE:

    open ~/.bash_profile
    
  11. Введите путь к новому Bash:

    « export PATH="/Users/USERNAME_COMPUTER/google-cloud-sdk/bin:$PATH" »
    
  12. Вернуться к шагу 8

Ответ 10

Мне пришлось загрузить файл bash_profile. Для этого

  • Откройте сеанс терминала.
  • В этом типе сеанса: source.bash_profile и затем нажмите enter

Теперь команда gcloud должна работать

Ответ 11

Я использую zsh и нашел эту суть очень полезной: https://gist.github.com/dwchiang/10849350

Отредактируйте файл ~/.zshrc, добавив в него две строки:

# The next line updates PATH for the Google Cloud SDK.
source /Users/YOUR_USERNAME/google-cloud-sdk/path.zsh.inc

# The next line enables zsh completion for gcloud.
source /Users/YOUR_USERNAME/google-cloud-sdk/completion.zsh.inc

Предполагается, что вы установили пакет в основной каталог из официальных документов.

Ответ 12

Это сработало для меня:

Говоря Y - Modify profile to update your $PATH and enable bash completion? (Y/n)?

В инициировании Google появляется запрос: Enter a path to an rc file to update, or leave blank to use и путь по умолчанию: [/Users/MY_USERSAME/.bash_profile]:, но вместо нажатия enter я написал: /Users/MY_USERNAME/.bashrc, чтобы изменить путь.

Это заменит местоположение по умолчанию, которое предлагает Google.

Тогда мне нужно было сделать source ~/.bashrc, и теперь все работает!

Ответ 13

Я нашел неправильные инструкции if-fi в моем ~/.bash_profile (нет, если условие в следующем блоке)

source '/Users/yorko/google-cloud-sdk/path.bash.inc'

fi

Мне просто пришлось удалить "fi" и запустить "source ~/.bash_profile", чтобы он работал.

Ответ 14

Если выполняется

source ~/.bashrc

приводит к "Нет такого файла или каталога"

В окнах:

  • Перейти к c/Users/
  • Удерживая shift, щелкните правой кнопкой мыши файл .bashrc и выберите "Копировать как путь"
  • В bash: source <pasteCopiedPathHere> → например: source "C:\Users\John\.bashhrc"

Ответ 15

Чтобы запустить его на MacOs Sierra, после установки gcloud я изменил свой .bash_profile

Оригинальные строки:

# The next line updates PATH for the Google Cloud SDK.
if [ -f '/Users/alejandro/google-cloud-sdk/path.bash.inc' ]; then . '/Users/alejandro/google-cloud-sdk/path.bash.inc'; fi

# The next line enables shell command completion for gcloud.
if [ -f '/Users/alejandro/google-cloud-sdk/completion.bash.inc' ]; then . '/Users/alejandro/google-cloud-sdk/completion.bash.inc'; fi

обновлено до:

# The next line updates PATH for the Google Cloud SDK.
if [ -f '/Users/alejandro/google-cloud-sdk/path.bash.inc' ]; then source '/Users/alejandro/google-cloud-sdk/path.bash.inc'; fi

# The next line enables shell command completion for gcloud.
if [ -f '/Users/alejandro/google-cloud-sdk/completion.bash.inc' ]; then source '/Users/alejandro/google-cloud-sdk/completion.bash.inc'; fi

Перезапустите терминал и все станет работать как положено!

Ответ 16

Инструкции по установке не ясно:

==> Source [/.../google-cloud-sdk/completion.bash.inc] in your profile to enable shell command completion for gcloud.
==> Source [/.../google-cloud-sdk/path.bash.inc] in your profile to add the Google Cloud SDK command line tools to your $PATH.

Мне нужно было добавить следующие строки кода в мой .bash_profile для gcloud для работы:

source '/.../google-cloud-sdk/completion.bash.inc'
source '/.../google-cloud-sdk/path.bash.inc'

Ответ 17

Если вы используете оболочку ZSH в MacOS, вам следует перезапустить установку, и когда вас спросят:

Modify profile to update your $PATH and enable shell command 
completion?

ответ YES

а также

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

ответ (ваш путь к zshrc): /Users/your_user/.zshrc

Перезапустите Терминал и все.

Ответ 18

sudo ./google-cloud-sdk/install.sh

Я запустил это в корневом каталоге, и это сработало. Я использую macOS Mojave версии 10.14.3.

Ответ 19

У меня была та же проблема, и потому, что ~/.bash_profile имел недопустимые операторы fi.

Исправление:

  • Выполнить команду sudo nano ~/.bash_profile
  • Удалены закрывающие операторы fi (те, у которых отсутствует открытие if)
  • Сохранить изменения .bash_profile
  • Выполнить команду source ~/.bash_profile

Ответ 20

$ sudo su
$ /opt/google-appengine-sdk/bin/gcloud components update
$ su <yourusername>

Ответ 21

Теперь, после запуска install.sh в Mac OS, сама Google дает информацию для запуска completion.bash.inc и path.bash.inc.

Если вы используете терминал zsh, он попросит вас запустить completion.zsh.inc и path.zsh.inc. Пожалуйста, смотрите изображение ниже

введите описание изображения здесь

Ответ 22

У меня была совсем другая история, которая, как оказалось, была вызвана моей виртуальной средой Python.

Где-то в середине запуска curl https://sdk.cloud.google.com | bash curl https://sdk.cloud.google.com | bash, я получаю ошибку:

~/google-cloud-sdk/install.sh
Welcome to the Google Cloud SDK!
pyenv: python2: command not found

The 'python2' command exists in these Python versions:
  2.7.14
  miniconda2-latest

Решение Я изменил скрипт google-cloud-sdk/install.sh:

# if CLOUDSDK_PYTHON is empty
if [ -z "$CLOUDSDK_PYTHON" ]; then
  # if python2 exists then plain python may point to a version != 2
  #if _cloudsdk_which python2 >/dev/null; then
  #  CLOUDSDK_PYTHON=python2
  if _cloudsdk_which python2.7 >/dev/null; then
    # this is what some OS X versions call their built-in Python
    CLOUDSDK_PYTHON=python2.7

и смог успешно запустить установку. Однако мне все еще нужно активировать мой pyenv с командой python2 для запуска gcloud.

почему так

Если вы посмотрите на скрипт google-cloud-sdk/install.sh, вы увидите, что он действительно проверяет версии Python очень грубо:

if [ -z "$CLOUDSDK_PYTHON" ]; then
  # if python2 exists then plain python may point to a version != 2
  if _cloudsdk_which python2 >/dev/null; then
    CLOUDSDK_PYTHON=python2

Однако на моей машине python2 не указывает на двоичный файл Python и не возвращает ноль. Так что установка рухнула.

Ответ 23

Попробуйте выполнить эту команду в Ubuntu/Linux:

sudo ./google-cloud-sdk/install.sh

Закройте терминал или откройте новое окно, так как журнал говорит:

==> Запустите новую оболочку, чтобы изменения вступили в силу.

Как только это будет сделано, попробуйте установить любой пакет с помощью команды glcloud:

gcloud components install app-engine-php

Это не покажет ошибку.