현재 zsh 시작 파일(예: zshrc 또는 zshenv)의 전체 경로를 가져옵니다.

현재 zsh 시작 파일(예: zshrc 또는 zshenv)의 전체 경로를 가져옵니다.

현재 처리 중인 zsh 시작 파일(예: zshrc 또는 zshenv)의 전체 경로를 얻을 수 있는 방법이 있습니까? 즉, /usr/local/etc/zshrc또는 에 위치할 수 있는 zshrc 파일이 있다고 가정해 보겠습니다 $HOME/.zshrc. 이 zshrc 파일에서는 위치에 따라 다양한 작업을 수행해야 합니다. 일반적인 접근 방식은 $0zshrc 스크립트 경로 대신 zsh 바이너리 경로를 포함하기 때문에 작동하지 않습니다.

답변1

프롬프트 확장은 %N(현재 스크립트/소스 파일/함수)를 제공합니다.

그래서 당신은 이것을 할 수 있습니다 :

print -P %N

아니면 에서 가져오세요 ${(%):-%N}.

$funcsourcetrace호출 스택 파일 도 참조하세요 .

관련 정보