본문 바로가기
linux

[linux] 3. 디렉터리와 파일

by 프링글's 2023. 4. 19.

!!혼자 시험공부한 내용을 올리는 거라 중구난방에 틀린 내용이 많을 수 있습니다!!

계층구조

  • Root 디렉터리: 디렉터리의 뿌리(”/”)
    • 루트를 관리하는 파일 시스템은 루트 파일 시스템
  • home 디렉터리: 사용자마다 홈 디렉터리가 있음
    • 사용자가 로그인하면 홈 디렉터리에서 작업을 함

경로명

  • 절대경로: 루트에서 시작한 경로의 정확한 이름
  • 상대경로: 현재 작업 디렉터리부터 시작해 경로 이름을 적는 것

명령어

  • pwd: print working directory
    • 현재 작업 중인 디렉터리의 절대 경로 출력
  • cd : change directory
    • 디렉터리 이동
    • cd .. → 위쪽 디렉터리로 이동
  • which : 명령어의 절대경로
    • 예) which pwd : /usr/pwd
  • ls : list
    • 지정된 디렉터리의 내용을 리스트함. 지정 안하면 현재 디렉터리 내용.
    옵션 기능
    -a 숨겨진 파일을 포함해 모든 파일을 리스트함
    -s 파일의 크기를 K바이트 단위로 출력
    -l 파일의 상세정보 출력
    -F 파일의 종류를 표시하여 출력
    * : 실행파일, / : 디렉터리, @ : 심볼릭 링크
    -R (Recursive) 모든 하위 디렉터리들을 리스트함
    -t 최근 수정된 시간 순서로 정렬해 출력
  • mkdir : make directory
    • 디렉터리 생성
    • -p : 중간 디렉터리 자동 생성
      • 예) mkdir -p ~/dest/dir1 : dest디렉터리가 없으면 자동 생성 후 dir1생성
  • rmdir : remove directory
    • 비어있는 디렉터리 삭제

파일

  • 일반 파일
    • 데이터를 가지고 있으면서 디스크에 저장
    • 텍스트 파일, 바이너리 파일
  • 디렉터리, 폴더
    • 파일들을 계층적으로 조직화하는데 사용됨
  • 장치파일
    • 물리적 장치에 대한 내부적 표현
  • 심볼릭 링크
    • 어떤 파일을 가리키는 또 하나의 경로명을 저장하는 파일

파일종류 표시 설명

일반파일 - 데이터를 갖고 있는 텍스트 파일 또는 이진파일
디렉터리 파일 d 디렉터리 내의 파일들의 이름과 파일 정보를 관리하는 파일
문자 장치 파일 c 문자 단위로 데이터를 전송하는 장치를 나타내는 파일
블록 장치 파일 b 블록 단위로 데이터를 전송하는 장치를 나타내는 파일
FIFO파일 p 프로세스 간 통신에 사용되는 이름 있는 파이ㅣ프
소켓 s 네트워크를 통한 프로세스 간 통신에 사용되는 파일
심볼릭 링크 l 다른 파일을 가리키는 포인터 역할
  • file : 파일 종류 확인
  • stat : 파일의 자세한 상태 정보 출력
  • cat : 파일의 내용을 그대로 화면에 출력. 파일을 지정하지 않으면 표준입력 내용 출력
    • -n : 문장에 번호를 붙여서 출력
  • more : 파일의 내용을 페이지 단위로 화면에 출력
  • head : 파일의 앞부분을 화면에 출력. 파일을 지정하지 않으면 표준 입력 내용을 대상으로
    • -n : n줄 만큼 출력
  • tail : 파일의 뒷부분을 화면에 출력. 파일을 지정하지 않으면 표준 입력 내용을 대상으로
    • -n : n줄 만큼 출력
  • wc : 단어 세기
    • -lwc : 줄, 단어, 문자 수를 세서 출력
  • cp : 파일 1을 파일 2에 복사.
    • -i : 대화형 옵션
      • 예) cp -i file1.txt file2.txt
    • -r : Recursion. 디렉터리 전체 복사 가능
      • 예) cp -r dir1 dir2
  • mv : 파일 1의 이름을 파일 2로 변경
    • 또는 파일을 디렉터리로 이동
      • 예) mv text.txt /dir1
    • 또는 디렉터리1을 디렉터리2로 이름 변경
  • rm : 파일 삭제
    • -r : 디렉터리 전체 삭제(rmdir 대신 사용)

링크

  • 기존 파일에 대한 또 하나의 새로운 이름
  • ln : 파일 1에 대한 링크 파일 2를 만들어줌
    • -s : 심볼릭 링크
    • ln 파일1 디렉터리 : 파일 1의 링크를 같은 이름으로 디렉터리에 만들어 줌
  • 하드 링크
    • 기존 파일에 대한 새로운 이름(약간 C로 치면 레퍼런스 느낌)
    • 기존 파일을 대표하는 i-노드를 가리켜 구현
    • ln file1.txt file2.txt : file1에 대한 새로운 이름 file2생성
  • 심볼릭 링크
    • 다른 파일을 가리키고 있는 별도의 파일
    • 실제 파일의 경로명을 저장하고 있는 일종의 특수 포인터
    • 경로명이 다른 파일에 대한 간접적 포인터 역할을 함
      • 그래서 원본 파일의 이름이 바뀌거나 삭제되면 경로명이 존재하지 않게되어 오류가 생김

'linux' 카테고리의 다른 글

[linux] 6.Others(Utilities)  (0) 2023.04.19
[linux] 5. 프로세스와 리디렉션  (1) 2023.04.19
[linux] 4. 권한(Privilege and Permission)  (0) 2023.04.19

댓글