Linux의 로그인 초기화에서 bash가 수행하는 작업을 디버깅하려고합니다. "bash -x"는 bash가 수행중인 작업을 출력하지만 "set -x"와 같은 소스 파일의 명령은 인쇄하지 않는다는 것을 읽었습니다. 호출하기 전에 초기화가 실행되기 때문에 "set -x"를 사용할 수 없습니다. "bash -x"는 OS X에서 잘 반복되는 것처럼 보이지만 bash 버전 때문일 수 있습니다.
리눅스 : 3.2.25
OS X : 3.2.48
다음은 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 ...
/etc/profile.d/vim.sh의 소스가 어떻게 설정되어 있지만 명령은 인쇄되지 않습니다. 업그레이드하지 않고 해결 방법이 있습니까? 버전 차이로 인해 발생합니까?