답변:
내장 된 pwd 쉘은 쉘이 사용자가 추적 할 때 추적하는 경로를 사용합니다 cd
(및 저장 $PWD
). 이는 복잡한 경로에 대한 심볼릭 링크가있는 경우 실제 경로 대신 해당 디렉토리로 변경하기 위해 입력 한 내용을 알려줍니다. 이것은 대부분의 시간 동안 원하는 것을 제공하기 위해 수행됩니다.
/bin/pwd
현재 디렉토리의 정식 경로를 반환 하는 getcwd
시스템 호출 (요즘 라이브러리 호출 /proc/self/cwd
)을 사용하여 모든 심볼릭 링크 순회를 수행합니다.
Steven D가 지적했듯이 무시 pwd
하는 -P
옵션이 $PWD
있습니다. -L
의 내용을 반환 하는 옵션 도 있습니다 $PWD
. 에 대한 매뉴얼 페이지 pwd
는 기본적으로 어떤 옵션이 사용되는지 말하지 않지만 경험상 위의 설명이 정확하다는 것을 알려줍니다 (쉘 pwd
대 /bin/pwd
). 그러나 당신은 아마 그것에 의존해서는 안되며 그냥 사용하십시오 pwd -P
.
/bin/pwd
GNU 인 Linux 시스템의 동작 pwd
입니다. pwd
가있는 POSIX 시스템 에서 /bin
. /bin/pwd
$ PWD를 사용하고 심볼릭 링크가있는 경로를 반환 할 수 있습니다. GNU pwd는 환경에서 POSIXLY_CORRECT 변수를 찾을 때 POSIX 방식으로 동작합니다.
man pwd
이 명령에 대한 옵션을 찾기 위해 쉘 에 입력하면이 정보를 쉽게 찾을 수 있다고 지적하고 싶습니다 .