[모두의 리눅스] 4장 파일과 디렉터리

aramjs·2023년 10월 23일

Linux

목록 보기
4/14
post-thumbnail

4.1 리눅스는 파일로 구성된다

  • 리눅스에서는 모든 것을 파일로 다루므로 파일 조작 방법을 익혀야 한다.

  • 디렉터리 : 여러 개의 파일을 담아서 정리할 수 있는 것이다. 폴더 개념과 동일하다.

디렉터리 안에 있는 디렉터리를 서브 디렉터리 혹은 자식 디렉터리라고 한다.
반대로 위에 있는 디렉터리를 부모 디렉터리라고 한다.

4.2 리눅스의 디렉터리 구조

  • / : 루트 디렉터리

  • 디렉터리 트리 : 루트 아래에 디렉터리와 파일이 있는 계층 구조이다.

  • PATH : /usr/bin/perl과 같은 경로이다. 리눅스에서는 구분자로 /을 사용한다.

  • 윈도와 차이

    • 윈도에서는 물리 디스크가 2개 있다면 디렉터리 트리도 2개이다.
    • 리눅스에서는 언제나 시스템 전체에 단 하나의 트리만 가진다.
    • 마운트 : 디스크의 디렉터리를 연결하는 것
  • /bin : 시스템과 관련된 중요한 명령어를 포함한다.

  • /dev : 디바이스 파일이 배치되어있다.

  • /etc : 애플리케이션의 설정 파일이 있다. 리눅스 자체의 설정 파일도 있다. 중요하다.

  • /home : 사용자별로 홈 디렉터리가 배치된다.

  • /sbin : bin과 비슷하게 실행 파일을 포함한다. 관리자용 명령어가 있다.

  • /usr : User System Resource 애플리케이션의 실행파일, 문서 등이 있다.

  • /var : variable 한 데이터를 저장한다. 앱 실행 중 생성된 데이터나 로그 등이 있다. 용량이 부족해질 수 있다.

로그인 직후에는 사용자의 홈 디렉토리 /home/jisu에서 시작한다.

4.3 절대 경로와 상대 경로

  • 절대 경로 : 루트 디렉터리부터 표시한다.

  • 상대 경로 : 현재 디렉터리를 기준으로 표시한다.

4.4 디렉터리 이동

  • cd /usr : /usr로 이동한다.

  • cd -p /usr/local

    • 커맨드 라인 인자 : -p /usr/local

    • 명령어 : cd

  • pwd : 현재 위치를 보여준다.

  • 경로에도 tab키를 이용하여 자동완성을 할 수 있다.

  • ~ : 사용자의 홈 디렉터리로 이동한다.

    • 틸드 확장 : 틸드가 셸에 의해 홈 디렉토리 경로로 치환되는 기능

    • cd ~/report : 서브 디렉토리로 바로 이동이 가능하다.

4.5 ls 명령어

  • ls /bin/cp : 인자로 파일을 지정하면 경로를 출력한다.

  • ls / /usr : //usr의 내용을 모두 보여준다.

파일이 하나도 없으면 아무것도 출력하지 않는다.

  • * : 임의의 문자열

    • ls ba* : ba로 시작하는 것들을 보여준다.

    • ls co*l : co로 시작하고 l로 끝나는 것들을 보여준다.

    • ls *.html : 확장자가 html인 것들을 보여준다.

  • ? : 임의의 한 문자

    • ls ba?? : ba로 시작하는 길이가 4개인 글자를 의미한다.

    • ls /bin/a?? : a로 시작하는 길이가 3개인 문자를 보여준다.

4.6 명령어의 옵션

  • -l : Long 파일 속성, 상세정보까지 출력한다.

    • 파일 타입, 파일 모드, 링크수, owner, group, 크기, 타임스탬프, 파일명/디렉터리명
  • -a : 숨겨진 파일도 출력한다.

    • . 로 시작하는 파일을 숨긴 파일로 판단한다.
  • ls -a -F == ls -aF

drwxr-xr-x. 20 root root 4096 9월 7 11:04 var
파일 타입 / 링크수(바로가기가 몇 개인지) / 소유자 / 소유그룹 / 크기 / 타임스탬프 / 파일 이름.디렉토리 이름

  • 타입

    • - : 보통 파일

    • d : 디렉토리

    • l : 심볼릭 링크

  • rwx : read, write, execute

  • ls -F (Format) : 파일 이름 뒤에 파일의 종류를 의미하는 기호를 추가해 출력한다.
    ( / : directory, @ : link, * : 실행 가능 파일 binary파일 , none : 일반 파일 )

    • ls -F / bin : /bin@ (바로가기) 디렉토리 자체의 정보를 보여준다.

    • ls -F /bin/* : 모든 파일 뒤에 *가 붙어 있다.

  • ls -w 30 : 출력 폭을 30으로 지정한다.

  • ls --quote-name : 롱 옵션이다. 파일 이름을 "로 묶어서 출력한다.

    • "bin" "etc" ...

    • 롱 옵션에서 다른 옵션과 혼동될 여지가 없으면 뒷부분을 생략할 수 있다.

    • -w == --width 롱 옵션은 뜻이 명확하다.

profile
안녕하세요.

0개의 댓글