2012-10-05 8 views
11

Ich habe einige Probleme bei der Installation vows über npm in zsh. Hier ist, was ich bekomme. Ich habe versucht, es mit und ohne die Option -g zu installieren. Hast du eine Ahnung, was hier nicht stimmt?Befehl nicht gefunden nach npm install in zsh

[❤ ~/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 
[email protected] /usr/local/share/npm/lib/node_modules/vows 
├── [email protected] 
└── [email protected] 
[❤ ~/Desktop/sauce-node-demo:master] vows 
zsh: command not found: vows 

Dank

+0

Haben Sie versucht, den Pfadcache der Shell über das erneute Laden zu aktualisieren? –

+0

immer noch nichts nach diesem Vorgang =/ – optikfluffel

Antwort

27

Wenn Sie Node.js mit Homebrew, Binärdateien npm installiert ist, kann in /usr/local/share/npm/bin finden. Sie sollten sicherstellen, dass sich dieses Verzeichnis in Ihrer PATH-Umgebungsvariablen befindet. Fügen Sie in Ihrer ~/.zshrc Datei export PATH=/usr/local/share/npm/bin:$PATH hinzu.

+2

Auf Mac, habe ich 'export PATH =" $ HOME/.npm-packages/bin: $ PATH "' zu meinem '~/.zshrc' hinzugefügt. –

-1

Ich denke, das Problem ist mehr über die ZSH-Abschluss.

Sie benötigen diese Zeile in Ihrer .zshrc hinzuzufügen:

zstyle ':completion:*' rehash true 

Wenn Sie Oh-mein-zsh, ein PR gemacht wurde, können Sie es integrieren kann, bis sie gezogen wird: https://github.com/robbyrussell/oh-my-zsh/issues/3440

23

hinzufügen source /home/YOUUSERNAME/.bash_profile am Anfang ~/.zshrc

Und alle fehlenden Befehle werden erkannt.

Für Benutzer Mac: source /Users/YOUUSERNAME/.bash_profile

+3

Das war eigentlich die beste Lösung, weil es alle Befehle importiert! –

+0

sehr einfache Lösung, danke. – Jessycormier

+0

Sie sind willkommen ... Wenn diese Antwort Ihnen hilft, die Entwicklungszeit zu verkürzen, können Sie mir eine Tasse Kaffee geben:)] (https://www.paypal.me/AbdennourT/2) –

0

für macOS Benutzer hinzufügen: betrachten .profilestatt von .bash_profile verwenden. Sie können immer noch manuell zu ~/.zshrc hinzufügen müssen:

source $HOME/.profile 

Beachten Sie, dass es keine solche Datei ist standardmäßig! Zitiert slhck https://superuser.com/a/473103:

Wie auch immer, können Sie einfach die Datei erstellen, wenn es nicht und es existiert in einem Texteditor öffnen.

touch ~/.profile 
open -e !$ 

Der Mehrwert ist, dass es guter Mensch fühlt sich eine einzelne Datei zu verwenden, um die Umgebung einzurichten, und zwar unabhängig von der verwendeten Shell. Das Laden einer Bash-Konfigurationsdatei in zsh war peinlich.

eine akzeptierte Antwort von Cos Zitiert https://stackoverflow.com/a/415444/2445063

.profile ist einfach das Anmeldeskript Dateiname ursprünglich von /bin/sh verwendet. bash, wobei generell abwärtskompatibel mit /bin/sh wird .profile lesen, wenn man

Nach Filip Ekberg/der Meinungsforschung besteht https://stackoverflow.com/a/415410/2445063

.profile ist das Äquivalent von .bash_profile für die Wurzel. Ich denke, dass der Name geändert wird, um andere Shells (csh, sh, tcsh) auch verwenden zu lassen.(Sie brauchen nicht ein als Benutzer)

zurück zu slhck bekommen, eine zur Kenntnis Aufmerksamkeit in Bezug auf bash:

(...), wenn Sie eine Datei namens ~/.bash_profile erstellen, Ihre ~/.profile wird nicht mehr gelesen.