Estoy tratando de depurar lo que hace bash en la inicialización de inicio de sesión para Linux. He leído que "bash -x" hará que bash imprima lo que está haciendo, pero no imprime comandos en archivos de origen como "set -x". No puedo usar "set -x" porque la inicialización se ejecuta antes de poder llamarlo. "bash -x" parece repetirse bien en OS X, pero eso podría deberse a las versiones de bash.
Linux: 3.2.25
OS X: 3.2.48
Aquí hay un extracto del comportamiento no recurrente en Linux:
bash -l -x -c 'echo 1'
# ... snip ...
+ for i in '/etc/profile.d/*.sh'
+ '[' -r /etc/profile.d/vim.sh ']'
+ '[' '' ']'
+ . /etc/profile.d/vim.sh
+ for i in '/etc/profile.d/*.sh'
+ '[' -r /etc/profile.d/which-2.sh ']'
+ '[' '' ']'
+ . /etc/profile.d/which-2.sh
# ... snip ...
Observe cómo se obtiene /etc/profile.d/vim.sh, pero sus comandos no se imprimen. ¿Hay alguna solución alternativa sin actualizar? ¿Es esto causado por la diferencia de versión?