여러 셸 중에서 가장 많이 이용되고 있는 셸이라면 단연 Bash 일 것이다. Bash 를 쓰다보면 자주 쓰는 alias 나 환경 변수들을 따로 저장해 둘 필요가 생긴다. 그런데 셸의 실행 형태에 따라 읽어 들이는 설정 파일이 다르다. 이를 모르면 아무리 설정 파일을 바꾸더라도 원하는 결과를 얻지 못하고 좌절할 수 있다. ㅠㅠ 셸 의 실행 형태 셸은 크게 세 가지 형태로 실행된다. 첫째는 interactive login shell 이고, 둘째는 interactive non-login shell, 셋째는 non-interactive shell 이다. 각각 어떤 경우에 해당되는지, 그리고 어떤 설정 파일을 읽어 들이는지 살펴보자. interactive login shell 어떤 시스템에 접속해서 shell 의 prompt 를 보기 위해서는 id 와 password 를 입력하는데, 이렇게 접속했을 때 실행되는 shell 이 interactive login shell 이다. interactive login shell 의 경우, /etc/profile 을 읽은 후 ~/.bash_profile 을 읽고 ~/.bash_login 과 ~/.profile 을 읽는다. interactive non-login shell 어떤 작업을 하다 보면 또 다른 셸을 실행시킬 필요가 있다. 이렇게 실행되는 셸이 interactive non-login shell 이다. 간단히 말해서 시스템에 접속한 후에 새로 실행시키는 셸들을 말한다. 이 interactive non-login shell 은 부모 환경을 그대로 물려받고, ~/.bashrc 를 읽는다. non-interactive shell 터미널에서 가장 많이 하는 작업 중의 하나는 스크립트를 실행 시키는 것이다. 이 때 스크립트를 실행시킬 때 작동하는 셸이 non-interactive shell 이다. 이 non-interactive shell 부모 환경만 물려받고, 별도의 파일을 읽지 않지만,...