.bashrc가 자동으로 초기화되지 않습니까?


1

새 터미널을 열 때 변수가 초기화 되기 전에 source ~/.bashrc또는 해야합니다 . 나는 이것을 자동으로 생각 했다? 그렇게 할 필요가 없도록 어떻게해야합니까?source ~./bash_profile$PATH.bashrc

답변:


2

귀하의 질문을 이해하는지 잘 모르겠지만

bash init 파일은 부팅시 제공되어야합니다. 그렇지 않은 경우 시스템이 잘못 구성되었거나 손상되었습니다.

당신은 당신의 운영체제를 언급하지 않았지만, 당신이 어떤 식 으로든 리눅스를 사용하고 있다고 생각합니다.

man bash다음과 같은 초기화 순서 는 다음과 같습니다.

bash가 대화식 로그인 쉘 또는 --login 옵션을 사용하는 비 대화식 쉘로 호출 되면 해당 파일이 존재하는 경우 먼저 / etc / profile 파일에서 명령을 읽고 실행 합니다. 해당 파일을 읽은 후 ~ / .bash_profile , ~ / .bash_login~ / .profile 을 순서대로 찾고 존재하고 읽을 수있는 첫 번째 파일에서 명령을 읽고 실행합니다. 이 동작을 막기 위해 쉘을 시작할 때 --noprofile 옵션을 사용할 수 있습니다.
대화 형 쉘 로그인 쉘 아닌 시작, bash는 읽고에서 명령을 실행 /etc/bash.bashrc~ / .bashrc에이 파일이 존재하는 경우 --norc 옵션을 사용하여이를 방지 할 수 있습니다. --rcfile 파일 옵션은 bash가 /etc/bash.bashrc~ / .bashrc 대신 파일에서 명령을 읽고 실행하도록합니다 .

우분투 배포판에서, 예를 들어,을로드 한 후 /etc/profile, 그것은을 찾습니다 ~/.profile다음과 같습니다 파일 :

if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
    . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

이것은 bash를 사용하고 파일 ~/.bashrc이 존재하면로드 / 소싱되고 그 후에 $ PATH 변수를 설정한다는 것을 의미합니다.

따라서 먼저 ~/.profile파일을 살펴보고 필요한 경우 수정하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.