У меня здесь была совсем другая история, которая, как оказалось, была вызвана моим виртуальными средами Python .
Где-то в середине работы 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 и не возвращает значение null. Так что установка рухнула.
.bashrc
файл, но (пока) не работает с zsh или другими оболочками. Поддержка zsh в установщике находится на подходе. Вы ответили,y
когда установщик запросилModify profile to update your $PATH and enable bash completion? (Y/n)?
?