Pwd 명령으로 디렉토리를 찾는 방법

Linux 명령 행을 사용할 때 가장 중요한 명령 중 하나는 인쇄 작업 디렉토리를 나타내는 pwd 명령입니다.

이 안내서는 pwd 명령을 사용하는 방법을 보여주고 작업중인 디렉토리의 실제 경로와 작업중인 논리 디렉토리를 보여줍니다.

현재있는 Linux 디렉토리를 찾는 방법

현재 실행중인 디렉토리를 찾으려면 다음 명령을 실행하십시오.

pwd

pwd 명령의 출력은 다음과 같습니다.

/ home / gary

시스템을 돌아 다니면서 작업 디렉토리가 변경되어 파일 시스템 내의 현재 위치를 반영합니다.

예를 들어, cd 명령 을 사용하여 documents 폴더로 이동하면 pwd 명령은 다음을 표시합니다.

/ home / gary / documents

심볼릭 링크 된 폴더로 이동하면 pwd가 무엇을 표시합니까?

이 부분에서는 상황을 설명하기 위해 약간의 시나리오를 설정합니다.

다음과 같은 폴더 구조가 있다고 가정 해보십시오.

이제 폴더 2에 대한 심볼릭 링크 를 다음과 같이 작성 했다고 가정 해보십시오.

ln -s / home / gary / documents / folder1 / home / gary / documents / accounts

폴더 트리는 이제 다음과 같이 보입니다.

ls 명령 은 특정 위치 내의 파일 및 폴더를 표시합니다.

ls -lt

내 문서 폴더에 위의 명령을 실행하면 계정에 대해 다음과 같이 표시됩니다.

accounts-> folder2

심볼릭 링크는 기본적으로 파일 시스템 내의 다른 위치를 가리 킵니다.

이제 문서 폴더에 있다고 가정하고 cd 명령을 사용하여 accounts 폴더로 이동했습니다.

pwd의 출력은 어떻게 될 것이라고 생각하십니까?

/ home / gary / documents / accounts가 표시되었다고 추측 한 경우 올바른 계정이지만 account 폴더에 대해 ls 명령을 실행하면 folder2 폴더 내의 파일을 보여줍니다.

다음 명령을보십시오 :

pwd -P

심볼릭 링크 된 폴더 내에서 위의 명령을 실행하면 우리의 경우 / home / gary / documents / folder2라는 실제 위치가 표시됩니다.

논리 폴더를 보려면 다음 명령을 사용할 수 있습니다.

pwd -L

제 경우에는 / home / gary / documents / accounts 인 pwd와 동일하게 표시됩니다.

pwd가 시스템에서 컴파일되고 설정되는 방법에 따라 pwd 명령은 기본적으로 물리적 경로로 설정되거나 논리 경로로 기본 설정 될 수 있습니다.

따라서 -P 또는 -L 스위치를 사용하는 것이 좋습니다 (어떤 동작을보고 싶은지에 따라 다름).

$ PWD 변수 사용하기

$ PWD 변수의 값을 표시하여 현재 작업 디렉토리를 볼 수 있습니다. 다음 명령을 사용하십시오.

echo $ PWD

이전 작업 디렉토리 표시

이전 작업 디렉토리를 보려면 다음 명령을 실행하십시오.

에코 $ OLDPWD

그러면 현재 디렉토리로 이동하기 전에 있던 디렉토리가 표시됩니다.

여러 번 pwd 발생

앞서 언급했듯이 pwd는 설정 방법에 따라 다르게 동작 할 수 있습니다.

이것의 좋은 예가 쿠분투 리눅스입니다.

pwd를 실행할 때 사용되는 pwd의 쉘 버전은 기호 링크 된 폴더 내에있을 때 논리 작업 디렉토리를 표시합니다.

그러나 다음 명령을 실행하면 기호 링크 된 폴더 내에있을 때 실제 작업 디렉터리가 표시됩니다.

/ usr / bin / pwd

근본적으로 같은 명령을 실행하고 있지만 기본 모드에서 실행할 때 역의 결과가 있기 때문에 이것은 분명히별로 도움이되지 않습니다.

앞서 언급했듯이 -P 및 -L 스크립트를 사용하는 습관을 갖기를 원할 것입니다.

개요

pwd 명령에는 두 개의 추가 스위치 만 있습니다.

pwd --version

pwd의 현재 버전 번호가 표시됩니다.

pwd의 쉘 버전에 대해 실행하면 이것이 작동하지 않을 수도 있지만 / bin / pwd에 대해 작동합니다.

다른 스위치는 다음과 같습니다.

pwd --help

그러면 터미널 페이지에 매뉴얼 페이지가 표시됩니다.

다시 이것은 pwd의 쉘 버전에서는 작동하지 않으며 / bin / pwd 버전에서만 작동합니다.