
En OS X, puede agregar un shell a /etc/shells y configurarlo como el shell predeterminado del usuario, de modo que cuando abran la terminal se les presente ese shell. Además, tiene la opción de abrir todas las pestañas nuevas de la terminal en el mismo directorio que la pestaña actualmente enfocada, esto se logra enviando la contraseña a la aplicación de la terminal a través de una función integrada en el mensaje, y la nueva pestaña pasando esa información a iniciar sesión o bash. Mi pregunta es ¿cómo se pasa esta información al inicio de sesión o al bash, como argumentos? ¿Variable ambiental?
La razón por la que quiero saber es que los shells que se incluyen con OS X no muestran cd /path/to/last/dir
que es el primer comando que se ejecuta cuando abres una pestaña (con la configuración del directorio deseada) mientras usas un shell que no se incluye con OS. X (por ejemplo, un bash moderno), y me gustaría encontrar una manera de replicarlo en mi configuración.
El terminal tiene uno /usr/local/bin/bash --noediting -i
en ejecución y cada pestaña tiene lo siguiente en ejecución:
login -pf camdennarzt -bash
y si está utilizando un shell que no viene con OS X, entonces la primera ejecución del comando es cd /path/to/last/dir
pero se ejecuta en un indicador como si se hubiera escrito el comando. Y si está utilizando un shell incluido, el directorio aún se cambia pero el El comando que lo hace no se muestra.
/etc/bashrc_Apple_Terminal
parece estar relacionado.
En Sierra muestra que el shell se inició como: login -pfl camdennarzt /bin/bash -c 'exec -la bash /usr/local/bin/bash'
y el problema desapareció, por lo que puede estar relacionado.