답변:
유형 (오디오 파일의 청록색, 아카이브 및 압축 파일의 경우 밝은 빨간색, 이미지 및 비디오의 경우 보라색)을 기준으로 파일을 색칠하는 것 외에도 ls
속성에 따라 파일 및 디렉토리의 색상을 지정합니다.
o+w, +t
)를 가지고 있음을 나타냅니다 .o+w, -t
).Stephano 집 에서 이상 우분투 질문은 서로 다른 속성의 색상을 통해이 매우 유익 사진을했다 :
으로 terdon는 지적, 색상 설정을 통해 수정할 수 있습니다 dircolors
. 다른 색상 설정 목록은으로 액세스 할 수 있습니다 dircolors --print-database
.
와 같은 각 출력 줄은 다음과 같은 BLK 40;33;01
형식입니다.
[TARGET] [TEXT_STYLE];[FOREGROUND_COLOR];[BACKGROUND_COLOR]
TARGET
채색 규칙의 대상을 나타냅니다
TEXT_STYLE
텍스트 스타일을 나타냅니다.
00
= 없음01
= 굵은 글씨04
= 밑줄05
= 깜박임07
= 역, 08
= 은폐FOREGROUND_COLOR
전경색을 나타냅니다.
30
= 블랙31
= 빨간색32
= 녹색33
= 노랑34
= 파란색35
= 자홍36
= 시안37
= 흰색BACKGROUND_COLOR
배경색을 나타냅니다.
40
= 블랙41
= 빨간색42
= 녹색43
= 노랑44
= 파란색45
= 자홍46
= 시안47
= 흰색오른쪽부터 시작하여 필드를 생략 할 수 있으므로 예를 들어 .tar 01;31
굵고 빨간색을 의미합니다.
XTerm 및 대부분의 다른 최신 터미널 에뮬레이터는 256 색을 지원합니다.
XTerm 256 색 전경색 코드는 다음과 같은 형식입니다.
38;5;[FOREGROUND_COLOR]
XTerm 256 색 배경색 코드는 다음과 같은 형식입니다.
48;5;[BACKGROUND_COLOR]
여기서 FOREGROUND_COLOR
and BACKGROUND_COLOR
는 0-255 범위의 숫자입니다. 16 및 256 색상 모드의 전체 색상 코드 목록은 아래 스크린 샷에 나와 있습니다.
38;5;
xterm 256 색 전경색 코드를 시작합니다 . 48;5;
xterm 256 색 배경색 코드를 시작합니다. dircolors 출력의 청록색 은 결과가 동일 38;5;51
하지 않습니다 36
.
의 색상은 ls
권한을 나타낼 수 있으며 일부 시스템의 기본값은 모든 사람이 녹색 배경의 쓰기 권한을 가진 디렉토리를 표시하는 것입니다.
(부터 )를 $LS_COLORS
사용 하여 변수를 편집하여 색상을 변경할 수 있습니다 .dircolors
man ls
Using color to distinguish file types is disabled both by default and
with --color=never. With --color=auto, ls emits color codes only when
standard output is connected to a terminal. The LS_COLORS environment
variable can change the settings. Use the dircolors command to set it.
구문은 분명히 성가신 일이지만 원하는 색상으로 파일을 만들고 다음과 같이 저장 하여이 색상을 변경할 수 있습니다 ~/.dircolors
.
dircolors -p > ~/.dircolors
이 명령은 기본값을로 인쇄합니다 ~/.dircolors
. 그런 다음 해당 파일을 편집하고 다음 줄을 변경해야합니다.
OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky
예를 들어, 빨간색 배경에 검은 색 텍스트로 만들려면 ( 색상 코드 목록 은 여기 참조 ) :
OTHER_WRITABLE 30;41 # dir that is other-writable (o+w) and not sticky
모든 기본값을 가질 필요는 없으며 한 줄로 파일을 만들고 변경하려는 줄만 재정의하면됩니다. 어쨌든 파일을 만든 후에는 다음을 사용하여 파일을로드하십시오.
eval "$(dircolors ~/.dircolors)";
그리고 여기에 작동합니다 :
이를 자동으로 수행하려면 eval
위 명령을 ~/.bashrc
파일에 추가 하십시오.
eval "$(dircolors ~/dircolors)";
더 직접적인 방법 대신에 dircolors ~/dircolors
?
모든 기술적 답변이 사실이지만, 나는 당신이 관대하게 또는 criss + cross를 복사 할 권리를 조금 떨어 뜨렸다는 비공식적 인 경고라고 생각합니다 ... ?)
검은 색으로 파랗게 만드는 방법 ...?
가장 가능성이 높은 권리를 되 찾을 수있는 "친환경적"인이 진술은 다음과 같습니다.
chmod -R a-x,o-w,+X thatGreenFolderWithSubfolders/
대문자 + X "특별 실행"의 목적을 이해하면 그 기능을 가장 잘 이해할 수 있습니다. 즉 Wikipedia를 참조하십시오.
'+'와 함께 사용하고 일반 파일 (예 : 텍스트 파일)에 대한 실행 권한을 설정하지 않고 큰 디렉토리 트리에 그룹 또는 다른 액세스 권한을 부여하기 위해 일반적으로-+ 옵션과 함께 사용하는 경우에만 유용합니다. 방금 "chmod -R a + rx ...
나는 같은 질문을 했지만 terdon의 대답 은 훌륭하지만 dirname과 dircolors 사이에 혼란이 있다고 생각합니까?
어쨌든 몇 가지 추가 연구를 한 후에 색상을 변경할 수 있으므로 여기에서 솔루션을 공유하고 있습니다. 언젠가 누군가에게 유용 할 수 있습니다!
따라서 간단한 3 단계 :
우선 terdon이 말했듯이 기본 색상을 파일로 복사하십시오.
dircolors -p > ~/.dircolors
그런 다음이 파일을 수정하십시오. 내부 색상의 값을 찾을 수 있지만 여기 에서 더 많이 찾았 습니다. :)
마지막 ~/.bashrc
으로 터미널을 열 때 색상이 자동으로로드되도록 파일에 다음 줄을 추가하십시오 .
eval 'dircolors ~/.dircolors' > /dev/null
Voilà :)
~/.zshrc
내가 함께 가야했다 if [[ -f ~/.dircolors ]] ; then eval $(dircolors -b ~/.dircolors) elif [[ -f /etc/DIR_COLORS ]] ; then eval $(dircolors -b /etc/DIR_COLORS) fi
. 줄 바꿈이 끔찍하다
문제를 빠르게 해결하려면 (nobg에서 다른 쓰기 가능 파일을 노란색으로 표시) :
LS_COLORS+=':ow=01;33'
교체 33
로 34
nobg에 파란색을 위해. 더 간단하게 nobg에서 nofg로 만들려면 :
LS_COLORS+=:ow=
변경 사항을 영구적으로 유지하려면 .profile에 변경 사항을 추가하십시오.
echo "export LS_COLORS+=':ow=01;33'" >> ~/.profile
LS_COLORS의 비 확장 관련 규칙을 보려면 :
echo "$LS_COLORS" | sed 's/:/\n/g' | grep -v '\*.'
sed
각 규칙을 한 줄에 넣고 다음으로 grep
시작하는 규칙을 제거합니다.*.'.
ls
터미널 의 색상 을 탐색하려면
C="$LS_COLORS"
function sc () {
echo "$LS_COLORS" | sed 's/:/\n/g' | grep -v '\*.'
}
function t () {
ls /mnt # Or the path to your example directory.
}
그때
LS_COLORS="$C:ow=38;5;250;48;5;025";t
다른 답변 (토마스 Nyman의 답변)에서 언급했듯이 38;5;
전경 x 용어 256 색 및 48;5;
배경 x 용어 256 색 의 접두어입니다 . 모든 터미널에서 256 색을 지원하지는 않습니다.
AskUbuntu의 -ls 에서 다른 색상의 의미는 무엇입니까?를 참조하십시오 .
자, 이것은 이것을 실행하면이 폴더에 permisions가 있음을 의미합니다.
сhmod og-w AU_LI
그것은 bgcolor를 제거합니다 :)