Linux pwd 명령어: 작업 디렉토리 확인하기

LinuxBeginner
지금 연습하기

소개

이번 실습에서는 Linux 파일 시스템을 탐색할 때 가장 기본이 되는 pwd 명령어에 대해 알아봅니다. 방대한 정보의 도서관에서 탐정이 되었다고 상상해 보세요. pwd는 여러분이 현재 어디에 있는지 정확히 알려주는 믿음직한 나침반과 같습니다. Linux를 처음 시작하는 초보자든, 기본기를 탄탄히 다지고 싶은 분이든, 이 실습을 통해 Linux 파일 시스템을 자신 있게 탐색하는 방법을 익힐 수 있을 것입니다.

시작 위치 파악하기

먼저 파일 시스템 내에서 현재 위치를 확인하는 것부터 시작해 보겠습니다. pwd 명령어는 "print working directory(작업 디렉토리 출력)"의 약자로, 이 여정의 첫 번째 도구입니다.

  1. 터미널을 엽니다. 명령어를 기다리는 프롬프트가 보일 것입니다. 이 프롬프트는 일반적으로 $ 기호로 끝납니다.

    Terminal command prompt

  2. 다음 명령어를 입력하고 Enter를 누르세요:

    pwd
    
  3. 다음과 유사한 출력이 나타날 것입니다:

    /home/labex/project
    

이 출력은 현재 labex 사용자의 홈 디렉토리 내에 있는 project 폴더에 있음을 의미합니다. 이를 절대 경로(absolute path)라고 부릅니다. 루트 디렉토리(/)에서 시작하여 현재 위치까지의 전체 경로를 보여줍니다.

여기서 무슨 일이 일어나고 있나요?

Linux 파일 시스템을 나무라고 생각해 보세요. 맨 앞의 /는 나무의 뿌리(루트)를 나타냅니다. /로 구분된 각 이름은 가지나 폴더입니다. 따라서 /home/labex/project는 루트 바로 아래의 home, 그 안의 labex, 그리고 그 안의 project 폴더에 위치하고 있다는 뜻입니다.

project 폴더에서 시작하는지 궁금할 수 있는데, 이는 LabEx 환경이 편의를 위해 그렇게 설정되어 있기 때문입니다. 일반적인 Linux 시스템에서는 보통 홈 디렉토리(/home/username)에서 시작하게 됩니다.

현재 디렉토리 살펴보기

이제 현재 위치를 알았으니, 디렉토리 내부를 좀 더 자세히 살펴보겠습니다.

  1. ls 명령어를 사용하여 현재 디렉토리의 내용을 나열해 보겠습니다. 다음을 입력하세요:

    ls
    
  2. 파일이나 디렉토리 목록이 보일 수 있습니다. 디렉토리가 비어 있다면 아무것도 출력되지 않을 수도 있습니다. 이는 지극히 정상입니다!

  3. 이제 다시 pwd를 사용하여 현재 위치를 확인해 봅시다:

    pwd
    
  4. 이전과 동일한 출력이 나타날 것입니다:

    /home/labex/project
    

이 단계를 통해 pwd는 해당 위치에 어떤 파일이나 디렉토리가 있는지와 관계없이 항상 현재 위치를 보여준다는 점을 이해할 수 있습니다.

pwd 옵션 살펴보기

pwd 명령어에는 특정 상황에서 유용하게 사용할 수 있는 몇 가지 옵션이 있습니다. 이제 이를 살펴보겠습니다.

참고: 이 단계에서는 심볼릭 링크(symbolic link)와 같은 새로운 개념이 등장합니다. 아직 완전히 이해하지 못했더라도 걱정하지 마세요. 향후 강의에서 자세히 다룰 예정입니다. 지금은 pwd 명령어가 옵션에 따라 어떻게 동작하는지에만 집중해 보세요.

  1. 먼저, 옵션 없이 pwd 명령어를 사용해 봅니다:

    pwd
    

    다음과 같이 출력될 것입니다:

    /home/labex/project
    
  2. 이제 -L 옵션(논리적 경로)을 사용해 봅니다:

    pwd -L
    

    동일한 결과가 출력됩니다:

    /home/labex/project
    
  3. 마지막으로 -P 옵션(물리적 경로)을 시도해 봅니다:

    pwd -P
    

    역시 동일한 결과가 출력됩니다:

    /home/labex/project
    

왜 모든 명령어가 같은 결과를 출력하는지 궁금할 수 있습니다. -L-P 옵션은 Windows의 바로가기와 같은 심볼릭 링크를 다룰 때 의미가 있습니다. 현재 디렉토리에는 경로에 영향을 주는 심볼릭 링크가 없기 때문에 모든 명령어 버전이 동일한 결과를 보여주는 것입니다.

두 옵션의 주요 차이점은 다음과 같습니다:

  • -L (logical): 현재 디렉토리에 도달하기 위해 사용한 경로를 보여주며, 결과에 심볼릭 링크 이름을 유지합니다.
  • -P (physical): 심볼릭 링크를 해석한 후 디스크상의 실제 디렉토리 경로를 보여줍니다.

실습 환경에는 real_dir을 가리키는 symlink_dir이라는 심볼릭 링크가 생성되어 있습니다. 이번 실습에서는 cd를 사용하지 않으므로 다음 예제를 지금 실행할 필요는 없습니다. 다만, 나중에 어떤 식으로 동작하는지 보여주는 예시입니다:

cd /home/labex/project/symlink_dir
pwd -L
pwd -P

이 예시에서 pwd -L/home/labex/project/symlink_dir을 보여주고, pwd -P/home/labex/project/real_dir을 보여주게 됩니다.

이번 실습에서 기억해야 할 핵심은 현재 디렉토리에 심볼릭 링크가 포함되어 있지 않을 경우 pwd, pwd -L, pwd -P가 모두 동일한 결과를 출력한다는 점입니다.

요약

이번 실습에서는 Linux 파일 시스템의 믿음직한 길잡이인 pwd 명령어에 대해 알아보았습니다. 다음 내용을 배웠습니다:

  1. pwd를 사용하여 파일 시스템 내 현재 위치를 확인하는 방법.
  2. 절대 경로(absolute path)의 개념 이해.
  3. ls와 같은 다른 명령어와 함께 pwd를 사용하는 방법.
  4. pwd 명령어의 -L-P 옵션을 살펴보고 심볼릭 링크를 다룰 때의 차이점 이해.

이러한 기술은 앞으로 Linux를 학습하는 과정에서 여러분이 디지털 작업 공간 내에서 항상 자신의 위치를 파악할 수 있도록 돕는 든든한 기초가 될 것입니다.