Problema
En macOS Monterey, un script con un shebang (por ejemplo, #!/bin/sh
) no es ejecutado por el intérprete indicado a través de zsh. Por ejemplo, el siguiente script producirá el siguiente resultado:
Script
#!/usr/bin/env bash
echo $SHELL
Resultado
% chmod u+x my_script
% my_script
/bin/zsh
Quiero que mis scripts se ejecuten con bash. Preferiría que se respete el shebang en lugar de cambiar por completo mi shell. ¿Cómo puedo asegurarme de que esto suceda?
Preguntas relacionadas que no responden a la mía:
- El shebang no funciona si estás ejecutando el script con '.': No lo estoy
- _Ejecuta el script como:
bash my_script
_: Quiero que respete el shebang, no cambiar mi comportamiento así que necesito revisar cada script antes de ejecutarlo con el shell correcto. - Cambia tu shell a bash: Deseo mantener el shell estándar de macOS.