※ 요약

ls 명령어는 "list segments"의 약자로써 가장 많이 사용하는 리눅스 명령어 중에 하나이다. 

ls는 보통 지정한 디렉토리나 파일의 정보를 출력하는데 사용한다.

옵션은 아래와 같이 상당히 많지만 자주 쓰이는 옵션은 그다지 많지 않다.


※ 경로
/bin/ls

※ 사용법
ls [옵션]... [파일]...

[옵션] : 생략 가능하고 여러개 사용가능

[파일] : 생략 가능하고 여러개 지정가능


※ 옵션

옵션은 보통 (-)와 함께 입력하여 사용한다.

그 밖에 LONG 옵션을 제공하는데, LONG 옵션은 보통 (--) 기호를 선행하여 사용한다.

 옵션

 Long 옵션

 설명

 -a

 --all

 .을 포함하여 경로 안의 모든 내용을 출력

 -A

 --almost-all

 .과 ..을 제외한 모든 내용을 출력

 -b

 --escape

 알파벳 형식의 리스트를 출력

 

 --block-size=SIZE

 지정한 바이트(SIZE) 만큼의 블록을 사용

 -B

 --ignore-backups

 ~로 끝나는 백업 파일을 출력하지 않음

 -c

 

 -lt 옵션과 함께 마지막 변경 시간을 출력하고 시간을 기준으로 정렬

 -l 옵션과 함께 마지막 변경된 시간을 출력하고 이름을 기준으로 정렬

 -C

 

 열의 엔트리를 출력

 

 --color[=WHEN]

 파일의 타입을 색으로 구별함

 WHEN에 올 수 있는 값은 'never', 'always', 'auto'

 -d

 --directory

 디렉토리의 경로를 출력, 심볼릭 링크라면 원래의 링크 정보를 출력 안 함

 -D

 --dired

 emacs를 위한 출력 형태를 생성

 -f

 

 정렬하지 않음, 이 옵션은 -aU 옵션을 활성화하고 -ls --color 옵션을 비활성화

 -F

 --classify

 목록의 마지막에 (*/=>@|) 중에 하나의 지시자를 붙임

 (실행파일은 *, 경로는 /, 소켓은 =, 심볼릭 링크는 @, FIFO는 |)

 

 --file-type

 -F, --classify과 비슷하나, *은 덧붙이지 않음

 

 --format=WORD

 옵션 대신 워드 서식을 지정하여 출력

 (across는 -x, commas는 -m, horizontal는 -x, long는 -l, single-column는 -1, verbose는 -l, vertical는 -C)

 

 --full-time

 -l --time-style=full-iso와 비슷함

 -g

 

 -l과 비슷하나 소유자의 리스트를 출력하지 않음

 

 --group-directories-first

 파일 이전에 그룹 디렉토리를 먼저 출력

 -G

 --no-group

 긴 리스트 형식으로 출력하나 그룹 이름은 출력하지 않음

 -h

 --human-readable

 -l과 함께 사람이 읽기 쉬운 형식의 크기로 출력

 

 --si

 -h와 비슷하나 1,024 단위가 아닌 1,000의 단위로 출력

 -H

 --dereference-command-line

 심볼릭 링크면 실제로 참조하는 목록을 출력

 

 --hide=PATTERN

 지정한 PATTERN과 매칭되는 리스트를 숨김(-a나 -A 옵션이 우선함)

 

 --indicator-style=WORD

 목록 이름에 WORD 스타일의 지시자를 추가

 (none은 기본값, slash는 -p, file-type은 --file-type, classify는 -F)

 -i

 --inode

 각 파일의 인덱스 값을 출력

 -I

 --ignore=PATTERN

 지정한 PATTERN에 매칭되는 목록을 출력하지 않음

 -k

 --kibibytes

 --block-size=1K와 비슷함

 -l

 

 긴 리스트 형식으로 출력

 -L

 --dereference

 심볼릭 링크의 정보를 보여줄 때 링크 파일의 원본 파일의 정보를 출력

 -m

 

 콤마로 구분된 목록 형식으로 출력

 -n

 --numeric-uid-gid

 -l 옵션과 비슷하나, 숫자 형식의 사용자와 그룹 ID를 출력

 -N

 --literal

 원래의 이름 형식으로 출력(보통 영문이 아닌 경우 \를 붙여서 출력)

 -o

 

 -l와 비슷하지만 그룹의 정보를 출력하지 않음

 -p

 --indicator-style=slash

 디렉토리에 슬래시(/)를 추가

 -q

 --hide-control-chars

 그래픽이 아닌 문자 대신 ?를 출력

 -Q

 --quote-name

 목록에 쌍 따옴표로 감싸서 출력

 -r

 --reverse

 정렬의 순서를 역순으로 바꿈

 -R

 --recursive

 현재 디렉토리를 기준으로 모든 하위의 디렉토리를 출력

 -s

 --size

 각 파일이나 블록에 할당된 크기를 출력

 -S

 

 파일의 크기를 기준으로 정렬

 -t

 

 수정된 시간을 기준으로 정렬

 -T

 --tabsize=COLS

 기본값 8 대신 지정한 COLS를 탭 간격으로 지정

 -u

 

 -lt 옵션과 함께 접근 시간을 기준으로 정렬

 -l 옵션과 함께 접근 시간을 출력하는데 이름을 기준으로 정렬

 -U

 

 정렬하지 않음

 -v

 

 

 -w

 --width=COLS

 현재 값 대신 스크린 넓이(COLS)를 지정

 -x

 

 열의 기준 대신 라인의 기준으로 출력

 -X

 

 목록의 확장자를 기준으로 알파벳 순으로 정렬

 -Z

 --context

 각 파일의 SELinux 보안 컨텍스트를 출력

 -1

 

 줄 별로 하나의 파일을 출력

 

 --help

 사용법을 출력

 

 --version

 버전 정보를 출력



※ 사용예

ls -al

: 현재 디렉토리 내의 모든 내용을 출력하는데, 출력 형식은 리스트 형식으로 출력한다.


ls -alt

: 현재 디렉토리 내의 모든 내용을 출력하고 출력 형식은 리스트 형식으로 출력하는데, 시간 순으로 정렬


ls -l --color=never

: 리스트 형식으로 출력하고 파일의 타입을 색으로 구분하지 않음


ls --tabsize=SIZE

: 아래를 보면 알겠지만 탭 사이즈를 변경해가며 출력


ls -m

: 각 파일이나 디렉토리의 간격을 콤마로 구분




+ Recent posts