Gulp comando no encontrado después de instalar
Instalé gulp (globalmente) y parece que funcionó porque ejecutó este código:
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
Pero cuando escribo gulp
dice -bash: gulp: command not found
¿Alguna idea de lo que está pasando?
8 answers
Resulta que npm estaba instalado en el directorio equivocado, así que tuve que cambiar el "prefijo de configuración de npm" ejecutando este código:
npm config set prefix /usr/local
Luego reinstalé gulp globalmente (con el parámetro-g) y funcionó correctamente.
Este artículo es donde encontré la solución: http://webbb.be/blog/command-not-found-node-npm
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-08-04 19:54:03
No estoy seguro de por qué la pregunta fue rechazada, pero tuve el mismo problema y después de la publicación del blog recomendó resolver el problema. Una cosa que debo agregar es que en mi caso, una vez que corrí:
npm config set prefix /usr/local
Confirmé que el npm root -g
estaba apuntando a /usr/local/lib/node_modules/npm
, pero para instalar gulp
en /usr/local/lib/node_modules
, tuve que usar sudo
:
sudo npm install gulp -g
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-06 17:50:24
Si está usando tcsh
(que es mi shell predeterminado en Mac OS X), probablemente solo necesite escribir rehash
en el shell justo después de que se complete la instalación:
npm install -g gulp
Seguido inmediatamente por:
rehash
De lo contrario, si esta es la primera vez que instala gulp
, es posible que su shell no reconozca que hay un nuevo ejecutable instalado, por lo que debe iniciar un nuevo shell o escribir rehash
en el shell actual.
(Esto es básicamente una cosa de una sola vez para cada comando que instalar globalmente.)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-06-07 09:45:21
Me doy cuenta de que este es un hilo viejo, pero para el Futuro, yo y la posteridad, pensé que debería agregar mis dos centavos en torno a la discusión de "ejecutar npm como sudo". Descargo de responsabilidad: No uso Windows. Estos pasos solo se han probado en máquinas que no son Windows, tanto virtuales como físicas.
Puede evitar la necesidad de usar sudo cambiando el permiso al directorio predeterminado de npm.
Cómo: cambiar los permisos para ejecutar npm sin sudo
, Paso 1: Averigüe dónde está el directorio predeterminado de npm.
- Para hacer esto, abra su terminal y ejecute:
npm config get prefix
Paso 2: Proceder, basado en la salida de ese comando:
-
Escenario Uno: el directorio predeterminado de npm es
/usr/local
Para la mayoría de los usuarios, su salida mostrará que el directorio predeterminado de npm es / usr / local, en cuyo caso puede saltar al paso 4 para actualizar los permisos para el directorio. -
Escenario dos: npm el directorio predeterminado es
/usr
o/Users/YOURUSERNAME/node_modules
o/Something/Else/FishyLooking
Si encuentra que el directorio predeterminado de npm no es /usr/local, sino que es algo que no puede explicar o parece sospechoso, debe ir al paso 3 para cambiar el directorio predeterminado de npm, o corre el riesgo de estropear sus permisos en una escala mucho mayor.
Paso 3: Cambiar el directorio predeterminado de npm:
- Hay un par de maneras de hacer esto, incluyendo la creación de un directorio específicamente para instalaciones globales y luego agregar ese directorio a su PATH PATH, pero como /usr / local probablemente ya esté en su path, creo que es más simple cambiar el directorio predeterminado de npm a ese. Así:
npm config set prefix /usr/local
- Para obtener más información sobre los otros enfoques que mencioné, consulte los documentos del mnp aquí.
Paso 4: Actualice los permisos en el directorio predeterminado de npm:
- Una vez que haya verificado que el directorio predeterminado de npm está en una ubicación sensible, puede actualizar los permisos usando el comando:
sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
Ahora debería poder ejecutar npm <whatever>
sin sudo
. Nota: Es posible que tenga que reiniciar su terminal para que estos cambios surtan efecto.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-09-14 15:34:20
Tuve este problema al obtener "comando no encontrado" después de la instalación, pero me instalé en /usr/local como se describe en la solución anterior.
Mi problema parecía ser causado por mí ejecutando la instalación con sudo. Hice lo siguiente.
- Eliminando gulp de nuevo con sudo
- Cambiando el propietario de /usr/local/lib/node_modules a mi usuario
- Instalando gulp de nuevo sin sudo. "npm install gulp-g"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-03-11 19:17:11
Tuve un problema similar Hice los siguientes pasos y funcionó.Vaya a mac terminal y ejecute los comandos,
1.npm config set prefix/usr / local
2.sudo chown-R} (whoami) get (npm config get prefix)/{lib/node_modules,bin,share}
Estos dos comandos configurarán la ruta npm correctamente y ya no tendrá que usar sudo en npm. Siguiente desinstalar el gulp
-
Npm desinstalar gulp
-
Installl gulp de nuevo sin sudo, instalación de npm gulp - g
Esto debería funcionar!!
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-11-07 08:51:57
Necesitas hacer esto npm install --global gulp
. Funciona para mí y también tenía este problema. Porque no instalaste globalmente este paquete.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-09-20 19:15:13
En mi caso agregar sudo antes de la instalación de npm resuelto gulp comando no encontrado problema
sudo npm install
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-06-08 09:31:14