"심볼릭 링크 해결"이란 무엇을 의미합니까?

"심볼릭 링크 해결"이란 무엇을 의미합니까?

이 bash 옵션이 혼란스럽습니다.

-피

설정된 경우 아니요해결하다현재 디렉터리를 변경하는 cd 등의 명령을 실행할 때의 심볼릭 링크입니다. 대신 실제 디렉터리를 사용하세요. 기본적으로 Bash는 현재 디렉터리를 변경하는 명령을 실행할 때 디렉터리의 논리적 체인을 따릅니다.

For example, if /usr/sys is a symbolic link to /usr/local/sys then:

$ cd /usr/sys; echo $PWD
/usr/sys
$ cd ..; pwd
/usr

If set -P is on, then:

$ cd /usr/sys; echo $PWD
/usr/local/sys
$ cd ..; pwd
/usr/local

나는 결심이 따르는 것을 의미한다고 생각했는가? 예를 들어 /usr/sys는 /usr/local/sys를 가리키므로 /usr/local/sys로 해석됩니다. 그러나 위의 예에서는 set -P/usr/sys를 열면 /usr/local/says?가 됩니다. 열려도 심볼릭 링크를 해결해서는 안 된다고 되어 있지만

답변1

vm1:/home/millerp > ln -s /var/log ./log
vm1:/home/millerp > set -P
vm1:/home/millerp > cd log
vm1:/var/log > cd
vm1:/home/millerp > set +P
vm1:/home/millerp > cd log
vm1:/home/millerp/log >

-P를 사용하면 cwd는 링크로 확인(변환)하지 않고 실제(물리적) 경로로 나타납니다. +P를 사용하면 cwd가 기호 링크 경로로 확인됩니다.

Muru가 지적했듯이 문제는 "누구를 위해 해결되었는가?"입니다.

관련 정보