web-dev-qa-db-fra.com

commande gcloud introuvable - lors de l'installation de Google Cloud SDK

Je suis sur un Mac et j'essaie d'installer le SDK Google Cloud (y compris l'utilitaire de ligne de commande gcloud) à l'aide de cette commande dans le terminal.

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

comme on le voit à https://cloud.google.com/sdk/

Il est arrivé à la fin et s'est terminé, mais même après le redémarrage de mon shell, la commande gcloud indique toujours que rien n'a été trouvé.

Pourquoi cette installation ne fonctionne-t-elle pas?

79
smntx

Voici donc mon correctif précédent pour ce problème, mais il s'avère que ce n'est pas permanent. Cela fonctionne mais chaque fois que vous redémarrez Terminal, vous devez faire la même chose, ce qui n’est pas pratique.

C'est pourquoi je vous suggère de supprimer le répertoire actuel de Google-cloud-sdk et de simplement refaire l'installation. Soyez sûr (comme l'a mentionné Zachary) de répondre oui (O) à l'invite Modify profile to update your $PATH and enable bash completion? (Y/n).

Voici mon ancienne réponse, mais il suffit de refaire l'installation:

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!
82
smntx

Pareil ici, j'essaye

source ~/.bashrc

Ensuite, cela a fonctionné

35
nvcken

Celui-ci a fonctionné pour moi:

source ~/.bash_profile
22
mirza vu

Sur Mac/Linux, vous devez entrer l’entrée suivante dans votre ~/.bashrc:

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

J'ai eu ce problème aujourd'hui, et ajouter Sudo au install command a résolu mon problème sur maxOS Sierra!

Sudo ./google-cloud-sdk/install.sh
17
Ibrahim

Je sais que cette question a reçu une réponse, mais voici mes deux centimes. Après avoir installé gcloud, vous devez redémarrer le shell avant de pouvoir lancer la commande gcloud. 

La façon dont vous faites cela dépend principalement du fichier dans lequel vous conservez votre configuration Shell. La plupart des fichiers sont .bashrc_profile, .bashrc, .zshrc

Vous pouvez maintenant redémarrer avec 

source ~/.bashrc_profile

Vous pouvez remplacer le fichier dans le fichier que vous avez. 

Ou si vous ne vous souciez pas de votre fichier, sur Mac ou Linux, vous pouvez redémarrer le Shell.

exec -l $Shell

10
Kanyi

Lors de l'installation du SDK, j'ai utilisé cette méthode:

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

Lorsque vous utilisez cette méthode de l'auteur d'origine, assurez-vous que vous avez accepté les préférences de sécurité de vos paramètres Mac afin de permettre aux applications téléchargées depuis l'App Store et aux développeurs identifiés. 

10

Je devais source mon fichier bash_profile. Faire cela, 

  1. Ouvrez une session de terminal.
  2. Dans cette session, tapez: Source .bash_profile puis appuyez sur Entrée

Maintenant, la commande gcloud devrait fonctionner

5
MG Denver

Vous devez juste exécuter cette commande en tant que root

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

Redémarrez le terminal et c'est tout. Maintenant, toutes les commandes doivent être exécutées en tant que root

4
Jhon Salazar

J'exécute zsh et trouve ce résumé très utile: https://Gist.github.com/dwchiang/10849350

Editez le fichier ~/.zshrc pour inclure ces deux lignes:

# 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

Cela suppose que vous avez installé le paquet dans votre répertoire principal à partir de documentation officielle

4
Connor Leech

Cela a fonctionné pour moi:

Après avoir dit Y à Modify profile to update your $PATH and enable bash completion? (Y/n)?

L'initiation de Google demande ceci: Enter a path to an rc file to update, or leave blank to use et le chemin par défaut était: [/Users/MY_USERSAME/.bash_profile]: mais au lieu d'appuyer sur enter, j'ai écrit: /Users/MY_USERNAME/.bashrc pour changer le chemin.

Cela écraserait l'emplacement par défaut suggéré par Google.

Ensuite, je n’ai plus qu’à faire source ~/.bashrc et tout fonctionne maintenant!

4
Thierry

Si en cours d'exécution

source ~/.bashrc

résultats dans "Aucun fichier ou répertoire de ce type"

Sur les fenêtres: 

  1. Aller à c/Utilisateurs /
  2. Tout en maintenant la touche Maj enfoncée, cliquez avec le bouton droit sur le fichier .bashrc et sélectionnez "Copier comme chemin"
  3. En bash: source <pasteCopiedPathHere> -> par exemple: source "C:\Users\John\.bashhrc"
2
Sebastian

J'ai trouvé des instructions if-fi incorrectes dans mon ~/.bash_profile (aucune condition si dans le bloc suivant)

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

fi

Je viens juste de supprimer "fi" et d’exécuter "source ~/.bash_profile" pour que cela fonctionne.

2
Kashnitsky

Pour le lancer sur MacOs Sierra, après l’installation de gcloud, j’ai modifié mon .bash_profile

Lignes originales:

# 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

mis à jour pour:

# 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

Redémarrez le terminal et tout va fonctionner comme prévu!

1
Alejandro

Les instructions post-installation ne sont pas claires:

==> 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.

J'ai dû ajouter les lignes de code suivantes dans mon .bash_profile pour gcloud pour fonctionner:

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

Comment installer GCloud et Always Works après le redémarrage sur Mac OS High Sierra: 

  1. Télécharger le package d'installation Ici

  2. Fichier atteint et déposé dans votre dossier

  3. Ouvrez le terminal, allez dans votre dossier avec fichier et entrez cette commande:

     ./google-cloud-sdk/install.sh
    
  4. "Modifier le profil pour mettre à jour votre $PATH et permettre l'achèvement de bash?" 
    Oui 

  5. Entrez ce chemin pour modifier:
    /Users/USERNAME_COMPUTER/.bashrc
  6. Après tout installer, entrez ceci:

      source ~/.bashrc
    
  7. Entrez ceci pour vérifier installer gcloud: 

    gcloud - -version

  8. Ouvre une nouvelle fenêtre terminal cmd+nNE FERME PAS LA VIEILLE FENÊTRE et entre dans la nouvelle fenêtre gcloud version

    si: «commande introuvable», passez à l'étape 9

    else: Félicitations GCloud travaille dans le terminal

  9. Revenez à l'ancienne fenêtre et entrez echo $PATH, Puis copiez le chemin d'accès à GCloud. 

  10. Ouvrir BASH_PROFILE: 

    open ~/.bash_profile
    
  11. Entrez le chemin vers le nouveau Bash:

    « export PATH="/Users/USERNAME_COMPUTER/google-cloud-sdk/bin:$PATH" »
    
  12. Revenir à l'étape 8

1
Maxim Vakurin
Sudo ./google-cloud-sdk/install.sh

J'ai couru cela dans le répertoire racine et cela a fonctionné. J'utilise MacOS Mojave Version 10.14.3.

0
user3552803

Essayez de faire cette commande sur Ubuntu/Linux:

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

Fermez le terminal ou ouvrez une nouvelle fenêtre comme le dit le journal:

==> Démarrer un nouveau shell pour que les modifications prennent effet.

Une fois que c'est fait, essayez d'installer n'importe quel paquet avec la commande glcloud:

gcloud components install app-engine-php

Cela ne montrera pas l'erreur.

0
Jaymin
$ Sudo su
$ /opt/google-appengine-sdk/bin/gcloud components update
$ su <yourusername>
0
Tiago Ferreira

J'ai eu une histoire très différente ici qui s'est avérée être causée par mes environnements virtuels Python .

Quelque part au milieu de l'exécution de curl https://sdk.cloud.google.com | bash, j'obtenais erreur :

~/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

solution J'ai modifié le script 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

et a pu exécuter l'installation avec succès. Cependant, je dois encore activer mon pyenv doté de la commande python2 pour exécuter gcloud.

pourquoi donc

Si vous regardez le script google-cloud-sdk/install.sh, vous verrez qu'il vérifie les versions de Python d'une manière très brutale:

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

Cependant, sur ma machine, python2 ne pointe pas sur le binaire Python, ni ne renvoie null. Donc, l'installation s'est écrasée.

0
alisa

Maintenant, après avoir exécuté install.sh dans Mac OS, Google lui-même a donné les informations pour exécuter completion.bash.inc et path.bash.inc.

Si vous utilisez un terminal zsh, il vous sera demandé d'exécuter completion.zsh.inc et path.zsh.inc. S'il vous plaît voir l'image ci-dessous

 enter image description here

0
arthankamal

Si vous exécutez ZSH Shell sous MacOS, vous devez réexécuter l’installation. Cette question vous sera posée:

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

répondre YES

et

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

répondre (votre chemin zshrc): /Users/your_user/.zshrc 

Redémarrez Terminal et c'est tout.

0
felipealves.gnu

J'ai eu le même problème et c'était parce que le ~/.bash_profile avait des instructions fi invalides. 

Le correctif:

  1. Exécuter la commande Sudo nano ~/.bash_profile
  2. Déclarations fi de clôture supprimées (celles qui manquent une ouverture if)
  3. Enregistrer les modifications .bash_profile
  4. Exécuter la commande source ~/.bash_profile
0
John Doherty