프로그램이 실행될 때 .bashrc 소스를 얻나요?

프로그램이 실행될 때 .bashrc 소스를 얻나요?

내 파일(Ubuntu v12) PATH의 환경 변수에 추가했습니다. .bashrc.PATH.bashrc.bashrc​아니면 컴퓨터를 다시 시작해야 합니까?

답변1

비대화형 쉘은 수동으로 요청하지 않는 한 소스를 가져오지 않으며 .bashrc서비스는 (일종의 래퍼 스크립트가 없는 한) 쉘을 호출하지 않을 수 있습니다.

진행 방법은 정확히 달성하려는 목표에 따라 다릅니다. 서비스에는 일반적으로 동작을 수정하기 위한 자체 구성 파일이 있으며 각 서비스에 대해 환경을 구체적으로 지정할 수도 있습니다. (저는 Ubuntu 사용자가 아니므로 이것이 귀하의 시스템에서 어떻게 작동할지 잘 모르겠습니다. 시작 단계입니다. ?) . 로그인 시 로드된 변수를 수정할 수도 있습니다 .profile. 이 파일로 내보낸 변수는 모든 하위 항목에 액세스할 수 있습니다. 서비스가 실제로 init 시스템에 의해 전역적으로 실행되는 경우에도 작동하지 않습니다(루트에서 사용자 이름으로 전환). /etc/environment작동할 수도 있지만 권장하지 않습니다. 보기 흉합니다.

귀하의 경우, 유일하게 깔끔한 방법은 서비스 환경을 설정하는 것입니다.

답변2

Bash 스크립트와 같은 비대화형 bash 쉘의 경우 파일 .bashrc은 다음과 같습니다.아니요원천. 로그인 쉘이 아닌 대화형 bash 쉘만이 이 파일을 얻을 수 있습니다. 자세한 내용은 bash(1) 매뉴얼 페이지의 INVOCATION 섹션을 확인하세요.

어떤 경우든 서비스는 일반적으로 대화형 셸의 하위 항목이 아니므로 변경 사항이 .bashrc서비스에 영향을 미치지 않습니다.

관련 정보