Ayer estaba haciendo un script sh para Linux. Para ello utilicé Sublime Text 3 pero cuál fue mi sorpresa al ver que salía un error que dice /bin/bash^M bad interpreter: No such file or directory. Es por ello que hoy veremos la solución a bad interpreter no such file or directory
Este post explica la solución a cuando editas el archivo desde Windows y se ponen los caracteres de terminación de línea del mismo.
Sin embargo, puede que realmente no exista el intérprete. Para ello verifica que el intérprete que pones (por ejemplo /bin/bash o /bin/sh) exista; puedes comprobarlo con el comando:
whereis sh
O con bash, como sea. Si no marca ningún error entonces sigue leyendo.
Otra vez Windows viene a no ser compatible con Linux. En este caso es por el salto de línea, ya que creo que Windows utiliza \r\n y Linux sólo \n
Para solucionarlo sin Sublime Text puedes ejecutar este comando en Linux:
sed -i -e 's/\r$//' tu_script.sh
En caso de que sí uses Sublime Text o lo tengas a la mano, abre el script. Luego ve al menú View > Line Endings > y selecciona Unix.
Finalmente guarda el archivo con Ctrl + S
Ahora ya no deberías tener problemas para ejecutar el script.
Lo expuesto aquí fue consultado en:
https://askubuntu.com/questions/304999/not-able-to-execute-a-sh-file-bin-bashm-bad-interpreter
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.