Zainstalowałem gulp (globalnie) i wygląda na to, że zadziałało, ponieważ uruchomił ten kod:
├── tildify@0.2.0
├── interpret@0.3.5
├── pretty-hrtime@0.2.1
├── deprecated@0.0.1
├── archy@0.0.2
├── minimist@0.2.0
├── semver@2.3.2
├── orchestrator@0.3.7 (stream-consume@0.1.0, sequencify@0.0.7, end-of-stream@0.1.5)
├── chalk@0.5.1 (escape-string-regexp@1.0.1, ansi-styles@1.1.0, supports-color@0.2.0, strip-ansi@0.3.0, has-ansi@0.1.0)
├── gulp-util@2.2.20 (lodash._reinterpolate@2.4.1, dateformat@1.0.8-1.2.3, vinyl@0.2.3, through2@0.5.1, multipipe@0.1.1, lodash.template@2.4.1)
├── liftoff@0.12.0 (extend@1.2.1, minimist@0.1.0, resolve@0.7.4, findup-sync@0.1.3)
└── vinyl-fs@0.3.5 (graceful-fs@3.0.2, lodash@2.4.1, mkdirp@0.5.0, strip-bom@0.3.1, vinyl@0.2.3, through2@0.5.1, glob-watcher@0.0.6, glob-stream@3.1.14)
Ale kiedy piszę gulp
, mówi-bash: gulp: command not found
Masz jakiś pomysł, co się dzieje?
sudo install gulp -g
. to zadziałałoOdpowiedzi:
Okazuje się, że npm został zainstalowany w złym katalogu, więc musiałem zmienić „prefiks konfiguracji npm”, uruchamiając ten kod:
Następnie ponownie zainstalowałem gulp globalnie (z parametrem -g) i działało poprawnie.
W tym artykule znalazłem rozwiązanie: http://webbb.be/blog/command-not-found-node-npm
źródło
Nie jestem pewien, dlaczego to pytanie zostało odrzucone, ale miałem ten sam problem i po wpisaniu na blogu zalecono rozwiązanie problemu. Powinienem dodać, że w moim przypadku, gdy biegałem:
I potwierdził, że
npm root -g
był wskazując/usr/local/lib/node_modules/npm
, ale w celu zainstalowaniagulp
w/usr/local/lib/node_modules
, musiałem użyćsudo
:sudo npm install gulp -g
źródło
npm config set prefix /usr/local
ROZWIĄZANY problem!Jeśli używasz
tcsh
(która jest moją domyślną powłoką w systemie Mac OS X), prawdopodobnie wystarczy wpisaćrehash
do powłoki tuż po zakończeniu instalacji:a zaraz po nim:
W przeciwnym razie, jeśli jest to Twoja pierwsza instalacja
gulp
, powłoka może nie rozpoznać, że jest zainstalowany nowy plik wykonywalny - musisz więc albo uruchomić nową powłokę, albo wpisaćrehash
bieżącą powłokę.(Jest to w zasadzie jednorazowa czynność dla każdego polecenia instalowanego globalnie).
źródło
Zdaję sobie sprawę, że jest to stary wątek, ale w przypadku Future-Me i potomności doszedłem do wniosku, że powinienem dodać swoje dwa centy do dyskusji na temat „uruchomionego npm jako sudo”. Zastrzeżenie: nie używam systemu Windows. Kroki te zostały sprawdzone tylko na maszynach innych niż Windows, zarówno wirtualnych, jak i fizycznych.
Możesz uniknąć konieczności używania sudo, zmieniając uprawnienia na domyślny katalog npm.
Instrukcje: zmiana uprawnień w celu uruchomienia npm bez
sudo
Krok 1: Dowiedz się, gdzie jest domyślny katalog npm.
npm config get prefix
Krok 2: Kontynuuj, opierając się na wynikach tego polecenia:
/usr/local
W przypadku większości użytkowników dane wyjściowe pokażą, że domyślnym katalogiem npm jest / usr / local, w takim przypadku można przejść do kroku 4, aby zaktualizować uprawnienia do katalogu.
/usr
lub/Users/YOURUSERNAME/node_modules
lub/Something/Else/FishyLooking
Jeśli okaże się, że domyślnym katalogiem npm nie jest / usr / local, ale zamiast tego jest to coś, czego nie możesz wyjaśnić lub wygląda podejrzanie, przejdź do kroku 3, aby zmienić domyślny katalog dla npm, lub ryzykujesz zepsucie uprawnień na znacznie większą skalę.
Krok 3: Zmień domyślny katalog npm:
npm config set prefix /usr/local
Krok 4: Zaktualizuj uprawnienia w domyślnym katalogu npm:
sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
Teraz powinieneś móc biegać
npm <whatever>
bezsudo
. Uwaga: aby zmiany zaczęły obowiązywać, może być konieczne ponowne uruchomienie terminala.źródło
Miałem podobny problem, wykonałem następujące kroki i zadziałało.Przejdź do terminala mac i wykonaj polecenia,
1.npm config set prefix / usr / local
2.sudo chown -R $ (whoami) $ (npm config get prefiks) / {lib / node_modules, bin, share}
Te dwa polecenia ustawią właściwą ścieżkę npm i nie musisz już używać sudo w npm. Następnie odinstaluj łyk
npm odinstaluj gulp
Zainstaluj ponownie gulp bez sudo, npm install gulp -g
To powinno działać !!
źródło
Miałem problem z otrzymaniem komunikatu „polecenie nie znaleziono” po instalacji, ale zostałem zainstalowany w / usr / local, jak opisano w powyższym rozwiązaniu.
Wyglądało na to, że mój problem był spowodowany uruchomieniem instalacji z sudo. Zrobiłem co następuje.
źródło
Musisz to zrobić
npm install --global gulp
. U mnie działa i ja też miałem ten problem. To dlatego, że nie zainstalowałeś tego pakietu globalnie.źródło
Jeśli jesteś na komputerze Mac, użyj uprawnień roota
sudo npm install gulp-cli --global
Aby sprawdzić, czy jest zainstalowany, uruchom
Wersja CLI: 2.2.0 (wyjście)
źródło
Mam to działając na Win10, używając kombinacji odpowiedzi z góry i gdzie indziej. Publikowanie tutaj dla innych i dla mnie w przyszłości.
Postępowałem zgodnie z instrukcjami tutaj: https://gulpjs.com/docs/en/getting-started/quick-start ale na ostatnim kroku po wpisaniu gulp --version dostałem wiadomość -bash: gulp: command not found
Aby to naprawić:
Poniżej znalazłem również powody, dla których nie należy instalować gulp na całym świecie i jak go usunąć (nie jestem pewien, czy jest to zalecane):
co oznacza gulp- „cli”?
Jak globalnie odinstalować Gulp CLI z NPM?
źródło
W moim przypadku dodanie sudo przed instalacją npm rozwiązane polecenie gulp nie znalazło problemu
sudo npm install
źródło
Jeśli chcesz pozostawić swój prefiks nienaruszony, po prostu wyeksportuj jego bin dir do zmiennej PATH:
export PATH=$HOME/your-path/bin:$PATH
dodałem ten wiersz do mojego $ HOME / .profile i pobrałem go.
Ustawienie prefiksu na
/usr/local
sprawia, że używaszsudo
, więc lubię mieć go w moim katalogu użytkownika. Możesz sprawdzić swój prefiks za pomocąnpm prefix -g
.źródło