ls 명령 시 나타나는 컬러 값 제어

ls 명령 시 나타나는 결과에 대한 색상을 제어하기 위한 내용입니다.

ls 버전 중에서  --color 옵션을 사용할 수 있는 버전은 파일 이름(확장자)이나 형태에 따라서  파일 목록을 색깔별로 나열할 수 있습니다.

컬러화의 초기값은 파일 형태에 따른 것이지만 환경 변수 "LS_COLORS(또는 LS_COLOURS)"로 변경할 수 있습니다.


1. 형식


LS_COLORS='항목:항목:항목:...'

항목의 형식은 'xx=문자열' 입니다.

xx는 파일의 형태를 나타내는 두 개의 문자이고, 문자열은 ';'로 구분하여 값(속성 및 색깔)을 정할 수 있습니다.


2. 파일 형태


위 1의 xx에 해당하는 문자입니다.
no파일 이름이 아닌 일반 텍스트
fi일반 파일
di디렉토리
ln심볼릭 링크
piFIFO(파이프)
so소켓
bd블럭 장치
cd캐릭터 장치
ex실행 파일
mi잃어버린 파일 (초기값은 fi)
or심볼릭 링크 대상이 없는 파일(초기값은 ln)
suSETUID 설정인 파일(u+s)
sgSETGID 설정인 파일(g+s)
twSTICKY 비트이고 다른 사용자(other) 쓰기 가능인 디렉토리(+t, o+w)
ow다른 사용자(other) 쓰기 가능(o+w)이지만 STICKY 비트는 아닌 디렉토리(-t, o+w).
stSTICKY 비트이지만 다른 사용자 쓰기 가능이 아닌 디렉토리(+t, o-w)

'*' 문자를 사용하여 일반 파일명에도 적용할 수 있습니다. 주로 확장자에 대한 색깔을 표현할 때 사용합니다.

형식은 '*파일명=문자열' 입니다.


예)

*.tar=00;31 => 확장자가 tar 파일은 전경색을 빨강(두번째 색) 전경으로 나타냅니다.

*README=01:32 => README 파일은 전경색을 강조 속성과 녹색(세번째 색)으로 나타냅니다.




3. 속성 및 색상


속성
00초기화
01강조색
04밑줄
05깜박이는 글자
07반전
05숨김
전경
30첫번째 색(ANSI 컬러일 경우 검정)
31두번째 색(ANSI 컬러일 경우 빨강)
32세번째 색(ANSI 컬러일 경우 녹색)
33네번째 색(ANSI 컬러일 경우 노랑(또는 갈색))
34다섯번째 색(ANSI 컬러일 경우 파랑)
35여섯번째 색(ANSI 컬러일 경우 보라)
36일곱번째 색(ANSI 컬러일 경우 청록색)
37여덟번째 색(ANSI 컬러일 경우 흰색(또는 회색))
배경
40첫번째 색(ANSI 컬러일 경우 검정)
41두번째 색(ANSI 컬러일 경우 빨강)
42세번째 색(ANSI 컬러일 경우 녹색)
43네번째 색(ANSI 컬러일 경우 노랑(또는 갈색))
44다섯번째 색(ANSI 컬러일 경우 파랑)
45여섯번째 색(ANSI 컬러일 경우 보라)
46일곱번째 색(ANSI 컬러일 경우 청록색)
47여덟번째 색(ANSI 컬러일 경우 흰색(또는 회색))

4. Xshell에서의 색 표현


Xshell에서 ls 명령 시 표현하기 위해서는 우선 아래 글을 참조하십시오.

Xshell에는 터미널에 나타나는 색을 사용자가 정할 수 있는 기능이 있습니다.

위 3의 전경색과 배경색은 Xshell의 색 구성표에 있는 컬러 순서에 따릅니다.



5. XSHELL에서 사용 예


  • fi=00: => 일반 파일은 속성 없음.
  • di=01;34: => 디렉토리는 강조색 네번째 색(밝은 파랑)
  • ln=01;36: => 심볼릭 링크 파일은 강조색 여섯번째 색(밝은 청록색)
  • or=31;40: => 링크를 상실한 심볼릭 링크 파일은 빨강색 글자에 배경은 검정
  • ex=01;32: => 실행파일은 글자가 강조색 세번째 색(밝은 녹색).
  • *.tar=01;31 => 확장자가 tar인 파일은 강조색 두번째 색(밝은 빨강)


Xshell은 색 구성표의 ANSI 컬러에서 일반 문자일 경우 첫번째 줄의 색을, 강조(굵게)일 경우 두번째 줄의 색을 사용합니다.