상위 셸의 .bashrc 파일을 다시 로드합니다.

상위 셸의 .bashrc 파일을 다시 로드합니다.

~/.bashrc내 도트 파일을 관리하기 위한 스크립트를 작성 중이며 현재 bash에 대해 내 파일을 자동으로 가져오고 싶습니다 .

그러나 나는 내 스크립트에서 다음과 같이 썼다는 것을 알았습니다.

source ~/.bashrc

스크립트를 실행하기 위해 .bashrc 파일을 가져옵니다. 내 셸이 이미 시작되었으므로 구성을 다시 로드하지 않습니다.

스크립트 호출자 bash에서 파일을 다시 로드하는 솔루션이 있습니까?

(올바른 용어를 사용하고 있지 않다고 생각되면 수정해 주세요.)

답변1

스크립트 끝에서 다음을 수행할 수 있습니다.

kill -USR1 $PPID

이렇게 하면 USR1스크립트를 실행하는 bash 쉘인 상위 프로세스에 신호를 보냅니다. 에서 이 신호를 캡처하여 원하는 작업을 수행 .bashrc할 수 있습니다 .USR1

source ~/.bashrc

관련 정보