OS X 터미널에서 update_terminal_cwd의 기능 명령이 있습니다 update_terminal_cwd. 나는 그것이 bash가

나는 지금 얼마 동안 그것에 의아해합니다. 에서 $PROMPT_COMMANDOS X에서의 bash라는 명령이 있습니다 update_terminal_cwd. 나는 그것이 bash가 내장되어 있지 않으며 OS X에만 존재한다고 확신합니다. 그러나 정확히 그것이 무엇을하는지 모르겠습니다. 누구나 아는가?



답변

현재 작업 디렉토리 (CWD)를 반향하도록 프롬프트를 업데이트하고 다음에 정의되어 있습니다 /etc/bashrc.

update_terminal_cwd() {
    # Identify the directory using a "file:" scheme URL,
    # including the host name to disambiguate local vs.
    # remote connections. Percent-escape spaces.
    local SEARCH=' '
    local REPLACE='%20'
    local PWD_URL="file://$HOSTNAME${PWD//$SEARCH/$REPLACE}"
    printf '\e]7;%s\a' "$PWD_URL"
}

답변

불투명 한 비밀 인코딩 형식 문자열, ‘\ e] 7; % s \ a’. 용의자.

local PWD_URL="file://$HOSTNAME${PWD//$SEARCH/$REPLACE}"

내가 수집 한 것에서 “file : // $ HOSTNAME”이 숨겨져 있으므로 원격 프로토콜 : 호스트 간첩을 볼 수 없습니다.