리눅스에서 Python 애플리케이션을 개발하든, 셸에서 파일을 정리하든, 현재 작업 중인 폴더가 어디인지 확인할 수 있는 것은 매우 중요합니다.
이때 유용한 것이 바로 pwd(print working directory) 명령어입니다. pwd는 터미널에서 현재 작업 중인 디렉터리의 이름뿐만 아니라 전체 경로(full path)까지 출력해 줍니다.
하나의 시스템에 같은 이름을 가진 폴더가 여러 개 존재하는 경우가 흔하기 때문에, 지금 어떤 폴더에 있는지 혼동을 확실히 없애주는 이 명령어는 모든 리눅스 환경에서 필수적이라 할 수 있습니다.
왜 pwd 명령어가 필요한가?
먼저 아래 예시를 살펴보겠습니다.
linuxscrew-host:pictures screw $
기본 Bash 터미널 프롬프트에는 호스트명(linuxscrew-host), 사용자명(screw), 그리고 현재 폴더(pictures)가 표시됩니다. 하지만 시스템에 pictures라는 이름의 폴더가 여러 개 있다면, 화면에 보이는 정보만으로는 지금 어느 폴더에 위치해 있는지 알기 어려울 수 있습니다.
바로 이럴 때 pwd 명령어가 정확한 답을 알려줍니다.
문법 및 사용 방법
pwd 명령어의 기본 문법은 다음과 같습니다.
pwd [OPTIONS]...
실제 사용 예시입니다!
pwd
(네, 그냥 pwd라고 입력하면 끝입니다. 정말 간단하죠?) 명령어를 실행하면 현재 작업 디렉터리의 전체 경로가 출력되며, 이 경우 결과는 /Users/screw/pictures입니다.
실행 결과:
linuxscrew-host:pictures screw$ pwd /Users/screw/pictures
pwd 명령어의 옵션
pwd는 매우 단순한 명령어로, 사용할 수 있는 옵션은 단 두 가지뿐입니다.
-L, --logical 논리적인(logical) 현재 작업 디렉터리를 표시 -P, --physical 물리적인(physical) 현재 작업 디렉터리를 표시 (모든 심볼릭 링크가 해석된 실제 경로)
Bash 셸에서는 다음과 같이 옵션을 함께 전달할 수 있습니다.
pwd -L -P
- -L(논리적 경로): 심볼릭 링크를 그대로 유지한 상태의 경로를 표시합니다. 환경 변수 PWD에 저장된 값을 기준으로 합니다.
- -P(물리적 경로): 심볼릭 링크를 모두 실제 디렉터리 경로로 해석하여 표시합니다.
- 심볼릭 링크(symlink)란 다른 파일이나 디렉터리를 가리키는 참조입니다. 윈도우에서 흔히 보는 바로 가기 아이콘과 비슷한 역할을 한다고 생각하면 이해하기 쉽습니다.
마무리
pwd는 목적이 분명하고 짧고 단순한 명령어이기에, 이 글도 간결하게 마무리했습니다! 터미널 작업 중 길을 잃었다고 느껴질 때마다 pwd를 입력해 현재 위치를 빠르게 확인해 보세요.
리눅스 명령어와 Bash 스크립팅에 대해 더 깊이 배우고 싶다면, 저희가 준비한 Bash 관련 아티클 전체 목록도 함께 확인해 보시기 바랍니다.