전공 지식 정리/유닉스

#2 파일과 디렉토리 - ls명령어

daramG 2022. 6. 15. 17:53

 

파일 : 하나의 파일은 보통 이름을 가진 데이터의 모임을 나타낼 때 쓰이는 용어

디렉토리 : 파일 시스템 내부에 있는 여러 파일들을 조직화하는 하나의 기법

파일시스템에는 디렉토리 파일과 일반 파일로 나눌 수 있다.

 

경로 : 특정 파일이나 디렉토리를 표현하기 위해 "/"(root디렉토리)를 시작으로 해서

경유하는 디렉토리를 "/" 기호로 구분하여 표현하는 것이다.

경로는 절대경로와 상대경로로 나뉜다.

절대경로 : 시작경로를 반드시 "/"로 시작하는 경로

상대경로 : 사용자가 작업하고 있는 현재 디렉토리(./)를 시작으로 해서 파일과 디렉토리를 표현하는 것이다.

유닉스 시스템에서 미리 정의된 디렉토리가 있다.

"."은 현재 디렉토리이고 ".."은 부모 디렉토리를 의미한다.

 

 

작업 명령어 

 

$ 명령어 [옵션] [인수1] [인수2]

유닉스 명령어는 옵션인수를 가지며 이들 사이에 반드시 한 개 이상의 공백을 가져야한다.

명령어 끝에는 엔터키 입력해 그 명령을 실행한다.

 

$ ls -l echo.c

"$" 기호는 프롬프트라고 하며, 시스템이 명령어를 실행할 준비가 되어있다는 의미이다.

"ls"는 유닉스 명령어이며 -옵션은 ls명령의 옵션이다. 인수와 구분하기 위해 '-'기호로 시작한다.

echo.c는 첫 번째 인수이다.

 

$ ls [옵션] [파일 또는 디렉토리 경로]

ls 명령어

: DOS의 dir 명령과 유사한 명령어로 현재 디렉토리 내에 있는 파일 및 디렉토리를 나열한다.

 

 

ls 명령어의 -l 옵션

: -l 옵션은 "long"이라는 뜻으로 가장 널리 사용되며 파일 및 디렉토리 표시 접근에 대한 허가정보 등 파일에 대한

많은 정보를 얻을 수 있다.

 

-rw-rw-r-- 1 daram user 1592 6월 15일 17:25 daramg.c

1번째 필드의 첫번째 칸에 일반적으로 "d", "-"로 표시된다.

"d"는 디렉토리, "-"는 일반 파일이다.

특수한 형태 파일로 표시되기도 한다. (b : 블록단위 입출력 특수파일, c : 문자단위 입출력, p : 파이프 형태의 입출력)

 

-rw-rw-r-- 1 daram user 1592 6월 15일 17:25 daramg.c

2번째 필드는 파일이나 디렉토리를 읽고 쓰고 실행할 수 있는지의 권한을 나타내는 정보다.

 

-rw-rw-r-- 1 daram user 1592 6월 15일 17:25 daramg.c

3번째 필드는 링크 수를 의미한다.

시스템 내에 이 파일을 링크하고 있는 수이다.

 

-rw-rw-r-- 1 daram user 1592 6월 15일 17:25 daramg.c

4번째 필드는 디렉토리나 파일을 소유하고 있는 사용자 ID이다.

 

-rw-rw-r-- 1 daram user 1592 6월 15일 17:25 daramg.c

5번째 필드는 디렉토리 파일의 크기가 바이트수로 표시된 것이다.

 

-rw-rw-r-- 1 daram user 1592 6월 15일 17:25 daramg.c

6번째 필드는 수정된 최근의 시간이다.

 

-rw-rw-r-- 1 daram user 1592 6월 15일 17:25 daramg.c

7번째 필드는 디렉토리나 파일의 이름이다.

 

ls 명령어의 -a, -d 옵션

 

$ ls -al /home/dotori

-a 옵션 : "ls"명령이 출력하지 않는 "."으로 시작하는 파일이나 디렉토리도 출력한다.

즉, 모든 파일을 출력하는 옵션이다. 출력하고 싶은 디렉토리를 지정할 수 있다.

 

$ ls -ald /home/dotori
$ ls -ld /home

-d 옵션 : 디렉토리 자체에 대한 상세 내용을 출력한다.

 

ls 명령어의 그 외의 옵션들

 

$ ls -alt /home/dotori

-t 옵션 : 파일이나 디렉토리를 최종 수정된 시간의 역순으로 sort 하여 출력한다.

 

$ ls -alr /home/dotori

-r 옵션 : 파일이나 디렉토리를 알파벳 역순으로 sort하여 출력한다. (reverse)

 

$ ls -alR ./r1

-R 옵션 : 디렉토리나 그 디렉토리에 포함된 모든 서브 디렉토리의 내용을 재귀적으로 출력한다.

 

$ ls -alF /home/dotori

-F 옵션 : 파일 및 디렉토리 다음에 파일의 특성을 나타내기 위한 문자를 보여준다.

'*'는 실행 가능한 파일, '/'는 디렉토리, '@'는 symbol link, '='는 소켓을 의미한다.

 

$ ls -als /home/dotori

-s옵션 : 파일들이 차지하는 크기를 디스크 블록 단위로 보여준다.

1개 블록은 512바이트이다.

 

$ ls -alt /home/dotori

-u옵션 : 그 파일이나 디렉토리에 최종적으로 접근(사용) 시간 순으로 보여준다.