
Mariano Álvarez
PreguntaUtilizo windows, git bash, sigo todos los pasos y cuando escribo “random-msg” me salta el siguiente error:
“/urs/bin/env: No such file or directory”
A medida que avanzo con la escuela de Javascript, más me pierdo…
- Hay que tener en cuenta que windows omite esta línea #!/usr/bin/env node.
- Al ejecutar el comando ++npm link++ lo que sucede es que se crea un acceso directo de nuestro directorio random-messages en la siguiente ruta ++C:\Users\xxxxxx\AppData\Roaming\npm\node_modules++ adicional a esto debería crearse los archivos (random-msg, random-msg.cmd, random-msg.ps1) en ++C:\Users\xxxxxx\AppData\Roaming\npm++ que permiten ejecutar el modulo solo llamando lo por su nombre, pero esto no sucede si en tu package.json en bin lo tienes así
- Luego de realizar los pasos anteriores podrás ejecutar sin problema random-msg.
- O uno, tienes un typo y la carpeta es usr y no urs.
- O dos, como tienes windows, tienes que poner la carpeta específica, por ejemplo

Emmanuel Fernando Gómez Díaz
Hola amigo, tuve el mismo error ya que al trabajar en windows hay algunas cosas que cambian.
"bin":{ "random-msg": "./bin/global.js" }
ya que al trabajar en windows el archivo no será llamado desde esta ruta si no desde
"bin":{ "random-msg": "./src/global.js" }
de esta forma vuelves a ejecutar el comando ++npm link++ y te debe crear los 3 archivos mencionados. 3. Finalmente ya al intentar ejecutar el modulo ingresando random-msg puede que te salga el siguiente error
..../random-msg.ps1 no está firmado digitalmente. No se puede ejecutar este script en el sistema actual. ......
Esto puede ser debido a la política de ejecución que tengas definida para la ejecución de este tipo de archivos (.ps1). Así que para poder continuar puedes hacer lo siguiente para dar permisos temporalmente.
Get-ExecutionPolicy -list
Este comando te mostrará los Ámbitos de la directiva de ejecución, para efectos de este ejercicio puedes cambiar la política para CurrentUser así
Set-ExecutionPolicy unrestricted -Scope CurrentUser
Cuando ya hayas terminado con la práctica aconsejo dejar indefinida la política para CurrentUser por seguridad.
Set-ExecutionPolicy undefined -Scope CurrentUser

Fernando Elías Díaz Acosta
Me aparecía este error luego de hacer npm link e intentar ejecutar el paquete por consola con el nombre definido en el bin.
El término ‘usr/bin/env.exe’ no se reconoce como nombre de un cmdlet, función, archivo de script o programa ejecutable. Compruebe si escribió correctamente el nombre o, si incluyó una ruta de acceso, compruebe que dicha ruta es correcta e inténtelo de nuevo.
Di muchísimas vueltas intentando resolverlo. Por ejemplo, intenté:
Revisar si efectivamente se estaba creando el enlace de forma global mirando la carpeta de nvm. OK Revisar la escritura de cada archivo y línea dentro del paquete. OK Cambiar el package.json para que todos los nombres y comandos coincidieran. OK El problema era el final de línea de mi computador. Resulta que el archivo global.js que está dentro de bin es un ejecutable por eso se pone esta línea al principio: #!/usr/bin/env node. Mi pc es windows y funciona con CRLF pero hace un tiempo había cambiado la configuración global de git para que fuera LF como los sistemas Unix (que el que usa git por defecto). Entonces como mi final de línea era LF, mi pc no entendía que significaba la línea de arriba. La solución cambiar nuevamente a CRLF para ese repositorio en particular.

David Leonardo Baron Avilan
Lo que ocurre es que esa ruta que especificas (la que especificamos con #!) puede tener dos problemas:
#!E:\Platzi\CursoDeNPM\random-messages\bin\env node
(E:) es el disco duro, luego tengo mi rama de carpetas y finalmente llegas a la carpeta bin que creaste.
Espero haber solucionado tu problema!! Y si no, estaré pendiente para poder seguirte ayudando.
@feeldiac Espero también ayudarte

Fernando Elías Díaz Acosta
¿Se solucionó?, tengo el mismo error.

José Galdámez
Esto es relacionado con la dirección donde está instalado node en tu máquina. en mi caso cambiar a #!/usr/local/bin/node me ayudó.
Fausto Misael Obregón Cabezas
x2