Linux

[Linux] 파일/디렉터리

8기_이지정 2024. 5. 17. 20:06

파일/디렉터리


1. 리눅스 파일

  • 리눅스에서는 모든 것을 파일로 다룸
  • 정보(데이터), 이미지, 영상, 프로그램 등을 파일로 보존
  • 리눅스에서는 시스템을 구성하는 장치조차도 파일로 다룸(하드디스크, 키보드, 프린트, 커널 등)

 

2. 리눅스 디렉터리(Directory)

  • 여러 개의 파일을 담아서 정리할 수 있는 것 (윈도나 맥의 폴더와 동일)
  • 서브 디렉터리 혹은 자식 디렉터리 : 디렉터리 안에 있는 디렉터리
  • 상위 디렉터리 혹은 부모 디렉터리 : 디렉터리 위에 있는 디렉터리

 

3. 루트 디렉터리(Root Directory)

  • 리눅스의 디렉터리 구조에서 맨 위에 있는  디렉터리
  •  루트 디렉터리 아래에 디렉터리와 파일이 있는 계층 구조를 트리라고 함
  • 리눅스는 언제나 시스템 전체에서 단 하나의 트리만을 가짐

 

4. 작업 디렉터리(Working Directory)

  • 리눅스를 사용하다 보면 많은 디렉터리를 이동하면서 작업하게 되는데 이때 현재 위치한 디렉터리
  • 리눅스에 로그인한 직후에는 사용자의 홈 디렉터리에서 시작 (홈 디렉터리는 명령 프롬프트에서  ~ 로 표시)
  • 현재 작업 중인 디렉터리를 확인하려면   pwd  명령어를 사용
# beyond는 윈도우의 계정과 같음
# ~$ : 홈디렉터리에 위치하고 있음을 표시

$ pwd
/home/beyond

현재 디렉터리(작업디렉터리)를 검색하는 명령어 pwd

 

5. 절대 경로와 상대 경로

  • 절대경로 : 루트 디렉터리에서 해당 파일에 이르는 경로를 표시하는 것
  • 절대경로는 해당 파일의 위치를 명학하게 나타내지만 디렉터리의 깊이가 깊으면 경로가 길어진다는 문제가 존재
/usr/share/zoneinfo/Asia
  • 상대경로 : 현재 디렉터리의 위치를 기준으로 표기하는 경로
  • 상대경로를 사용할 때는 특수 디렉터리인  .    ..  를 사용
  •  .  은 현재 디렉터리를 뜻하고   ..  는 상위(부모) 디렉터리르 뜻함

 

6. 디렉터리 이동

  • 현재 작업 디렉터리를 변경하려면 cd 명령어를 사용
$ cd [이동할 디렉터리 이름]

 

# cd : change directory
# ls : list segments
# cd 명령어는 명령어 뒤에 지정한 디렉터리로 이동하는데 이때 명령어 뒤에 스페이스로 구분하여 전달하는 문자열을 커맨드 라인 인자
# 디렉터리를 지정할 때 절대 경로와 상대 경로 모두 지정이 가능

cd /home
ls

home 디렉터리로 이동

 

7. 디렉터리 내용 확인

  • 현재 작업 디렉터리에 있는 파일이나 하위 디렉터리의 목록을 확인하려면  ls  명령어를 사용
$ ls
bin  boot  dev  etc  home  lib  lib32  lib64  libx32  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

 

# ls :  현재 작업 디렉터리에 있는 파일과 폴더를 확인

$ ls

현재 디렉터리에 있는 내용 확인

 

  • 인자로 파일 또는 디렉터리를 지정하면 해당 경로를 출력 (여러 경로를 지정 가능)
$ ls [파일 또는 디렉터리 이름]

 

$ ls / /home ~

ls에 3개의 인자를 전달



  • ls 명령어는 -으로 시작하는 옵션을 지정할 수 있는데 이를 옵션 또는 커맨드 라인 옵션이라고 부름
# 파일의 속성과 상세 정보까지 함께 출력
$ ls -l 

파일의 속성과 상세 정보까지 함께 출력


 

# 숨겨진 파일도 함께 출력
$ ls -a

숨겨진 파일도 함께 출력


# 파일 이름 뒤에 파일을 의미하는 기호를 추가해 출력
# / : 디렉터리, * : 실행 파일, @ : 심볼릭 링크
$ ls -F 

파일 이름 뒤에 파일을 의미하는 기호를 추가해 출력


# 옵션 조합
$ ls -alf

원하는 조건에 맞게 조합 가능


# 옵션의 종류와 기능 정보를 제공
$ ls --help

옵션의 종류와 기능 정보를 제공