Commande introuvable après npm install dans zsh

je vais avoir quelques problèmes avec l'installation vœux via le mécanisme national de prévention de zsh. Voici ce que j'obtiens. J'ai essayé de l'installer avec et sans l'option-g. Avez-vous une idée de quel est le problème ici?

[❤  ~/Desktop/sauce-node-demo:master] npm install -g vows
npm http GET https://registry.npmjs.org/vows
npm http 304 https://registry.npmjs.org/vows
npm http GET https://registry.npmjs.org/eyes
npm http GET https://registry.npmjs.org/diff
npm http 304 https://registry.npmjs.org/eyes
npm http 304 https://registry.npmjs.org/diff
/usr/local/share/npm/bin/vows -> /usr/local/share/npm/lib/node_modules/vows/bin/vows
vows@0.6.4 /usr/local/share/npm/lib/node_modules/vows
├── eyes@0.1.8
└── diff@1.0.3
[❤  ~/Desktop/sauce-node-demo:master] vows
zsh: command not found: vows

Merci

17
demandé sur optikfluffel 2012-10-05 14:02:47

5 réponses

si vous avez installé Node.js utilisant Homebrew, mnp binaires peut être trouvé dans /usr/local/share/npm/bin . Vous devez vous assurer que ce répertoire est dans votre variable D'environnement PATH. Donc, dans votre fichier ~/.zshrc , ajoutez export PATH=/usr/local/share/npm/bin:$PATH .

31
répondu Andrew Ferk 2016-03-14 21:05:54

ajouter source /home/YOUUSERNAME/.bash_profile au début de ~/.zshrc

Et toutes les commandes manquantes seront détectés.

pour Mac utilisateurs: ajouter source /Users/YOUUSERNAME/.bash_profile

37
répondu Abdennour TOUMI 2016-11-02 08:37:51

pour macOS utilisateurs: envisager d'utiliser .profile à la place de .bash_profile . Vous pouvez encore avoir besoin de l'ajouter manuellement à ~/.zshrc :

source $HOME/.profile

Notez qu'il n'existe pas de fichier par défaut! citant slhck https://superuser.com/a/473103 :

de toute façon, vous pouvez simplement créer le fichier s'il n'existe pas et l'ouvrir dans un éditeur de texte.

touch ~/.profile
open -e !$

la valeur ajoutée est qu'il se sent bien Homme d'utiliser un seul fichier pour configurer l'environnement, indépendamment du shell utilisé. Charger un fichier de configuration de bash en zsh était maladroit.

citant une réponse acceptée par le commandant https://stackoverflow.com/a/415444/2445063

.profile est simplement le nom du fichier de script de connexion utilisé à l'origine par /bin/sh . bash, étant généralement rétro-compatible avec /bin/sh , se lira .profile si un existe

suite à la recherche / opinion de Filip Ekberg https://stackoverflow.com/a/415410/2445063

.profile est l'équivalent de .bash_profile pour la racine. Je pense que le nom est changé pour laisser à d'autres coquillages (csh, sh, tcsh) l'utiliser ainsi. (vous n'en avez pas besoin en tant qu'utilisateur)

pour revenir à slhck, une note d'attention concernant bash :

( ... ) une fois que vous aurez créé un fichier appelé ~/.bash_profile , votre ~/.profile ne sera plus lu.

0
répondu wiherek 2017-08-19 20:25:13

une autre chose à essayer et la réponse pour moi était de décommenter le premier export dans ~/.zshrc

# If you come from bash you might have to change your $PATH. export PATH=$HOME/bin:/usr/local/bin:$PATH

0
répondu Mikeumus 2018-08-31 14:50:16

je pense que le problème est plus sur L'achèvement ZSH.

Vous devez ajouter cette ligne dans votre .zshrc:

zstyle ':completion:*' rehash true

si vous avez Oh-my-zsh, un PR a été fait, vous pouvez l'intégrer jusqu'à ce qu'il soit tiré: https://github.com/robbyrussell/oh-my-zsh/issues/3440

-1
répondu Creak 2015-06-29 17:39:46