승상의 코딩 블로그

리눅스 네비게이션2 - 기초 명령어(pwd, ls, cd)와 경로(relative path, absolute path) 본문

Linux (리눅스)

리눅스 네비게이션2 - 기초 명령어(pwd, ls, cd)와 경로(relative path, absolute path)

양승상 2022. 12. 20. 21:27
반응형
# 
ls -l
ls -a
ls -alh

리눅스를 사용하기 위해서는 가장 기초적인 명령어와 경로에 대해 알아본다.

pwd - 현재 경로 확인 명령어

pwd 는 print working directory 의 약어로써,

/ 디렉토리에서 부터의 현재 경로를 확인할 때 사용하는 명령어이다.

사용자 home 디렉토리에서 pwd 출력

항상 현재 자신의 경로를 어디있는지 확인하는 것은 중요하다.

터미널에서 입력하는 라인에 경로가 나오는데, 왜 pwd 가 필요한지 현재는 의아해할 수 있다.

추후에, 명령어로 스크립트를 만들어 실행할 때, 어떤 경로에서 실행되는지 파악하는데도 사용된다. 프로그램은 경로라는 것에 민감하기 때문에 현재 경로를 파악하는 것은 중요하다. 

ls - 디렉토리 내용 확인 명령어

ls 는 list 의 약어로써,

특정 디렉토리의 내용을 확인할 때 사용하는 명령어이다.

# 현재 경로에서의 내용물 확인
ls 
# 특정 경로에서의 내용물 확인
ls [경로]

ls 명령어

~ 디렉토리에서 ls 만 사용할 경우, ~ 디렉토리의 내용물을 확인할 수 있다.

"ls [경로]" 형태로 특정 경로를 기입할 경우 특정 경로의 내용물을 확인할 수 있다. 

 

ls 는 옵션을 붙여서 사용하는 경우가 많다.

# 숨김파일(. 으로 시작하는 파일)도 시현한다.
ls -a
# 파일의 여러 정보를 함께 출력한다. (권한, 크기 등 ...)
ls -l
# 옵션은 연결해서 사용가능하다.
# 파일 크기 정보는 사람이 읽기 편한 K, M, G 형태로 시현한다.
ls -alh

ls -l / ls -a
ls -alh

cd - 현재 경로에서 파일 이동 명령어 & Relative Path, Absolute Path - 상대 경로, 절대 경로

파일 시스템 구조 예시

"cd [경로]" 형태를 사용하면 현재 경로에서 [경로]로 이동할 수 있다.

 

내가 현재 Desktop 디렉토리에 있다고 가정하자.

Desktop 디렉토리에서 하위 Test 디렉토리를 가고 싶다면, "cd Test" 를 입력하면 된다.

이렇게 현재 경로 기준으로 이동하는 것을 상대경로라고 한다.

만약 Test 디렉토리에서 Desktop 디렉토리로 돌아오고 싶다면, "cd .."을 입력하면 된다.

".." 은 리눅스에서 현재 디렉토리의 부모 디렉토리(상위 디렉토리)를 의미한다.

추가로 "." 도 있는데, 이는 현재 디렉토리 경로를 의미한다.

"cd ." 을 입력하면, 아무런 일도 일어나지 않는다. 왜냐하면, 현재 디렉토리에서 현재 디렉토리로 이동했기 때문이다.

절대 경로는 최상위 루트 디렉토리에서 시작하는 경로를 의미한다.

Desktop 디렉토리에서 하위 Test 디렉토리로 절대경로를 통해 이동한다면, "cd /home/{user}/Desktop/Test" 를 입력하면 된다. 

만약, Test 디렉토리에서 Pictures 디렉토리로 이동한다면, 상대경로를 여러번 명령어를 입력해야하지만 절대경로는 "cd /home/{user}/Pictures" 로 한번에 접근가능하다.

 

동일한 위치에서 동일한 폴더[파일]명을 만들 수 없지만, 위치가 다른곳에서는 만들 수 있다.

이런 상황에서 상대경로는 프로그램이 실행되는 위치에 따라 잘못 접근할 수 있다. 이 때는 절대 경로를 사용하면 명확해진다.

그러나, 프로그램이 어디서 실행되는지 상관없이 프로그램이 실행되는 경로 하위 폴더로만 접근할 때는 상대경로가 유용하다.

단순히 예를 들었지만, 스크립트를 짤 때 경우에 따라 상대경로를 쓰면 좋은 상황이 있고 절대경로를 쓰면 좋을 때가 있다.

각자의 상황에 맞게 쓰면 된다.

반응형
Comments