Soy un usuario de Windows y Linux desde hace mucho tiempo (no tengo nada en contra de los Mac, nunca tuve ninguno) y en el pasado he tenido algunas experiencias extrañas escribiendo guiones de shell en Mac OS X. En particular, puedo escribir los guiones solo bien y ejecutarlos desde la terminal, pero cada vez que intento ejecutar uno desde una ventana del Finder siempre se ejecuta desde el directorio de inicio del usuario en lugar del directorio en el que vive la secuencia de comandos. Es decir, si el script se encuentra enLos scripts de shell en Mac OS X se ejecutan desde el directorio de inicio?
~/path/to/the/script.sh
siempre se queda sin ~
. En el pasado, he tenido que preguntar a mis amigos más expertos en Mac cómo solucionar esto, y lo han hecho a menudo usando algunas técnicas perversamente horribles, pero no veo ninguna razón por la que este debería ser el caso.
Mi pregunta es: ¿existe una manera fácil de escribir un script de shell en Mac OS X que, cuando se hace doble clic en Finder, se ejecuta fuera del directorio en el que reside?
¿Por qué espera que haga lo contrario? Este es solo el comportamiento definido. – bmargulies
"directorio raíz"! = "Directorio principal del usuario" –
Al menos en Windows, el comportamiento predeterminado que se obtiene al ejecutar un programa desde una ventana del explorador es que el programa se está quedando sin el directorio desde el que reside. Quizás esta es la excepción más que la regla, pero es a lo que estoy más acostumbrado. – templatetypedef