답변:
디렉토리 색상을 변경하려면 ~/.bashrc
편집기로 파일을여십시오.
nano ~/.bashrc
파일 끝에 다음과 같이 입력하십시오.
LS_COLORS=$LS_COLORS:'di=0;35:' ; export LS_COLORS
몇 가지 좋은 색상 선택 (이 경우 0;35
자주색)은 다음과 같습니다.
Blue = 34
Green = 32
Light Green = 1;32
Cyan = 36
Red = 31
Purple = 35
Brown = 33
Yellow = 1;33
Bold White = 1;37
Light Grey = 0;37
Black = 30
Dark Grey= 1;30
첫 번째 숫자는 스타일 (1 = 굵게)이고 그 뒤에 세미콜론이오고 실제 색상 수는 다음과 같습니다. 가능한 스타일 (효과)은 다음과 같습니다.
0 = default colour
1 = bold
4 = underlined
5 = flashing text (disabled on some terminals)
7 = reverse field (exchange foreground and background color)
8 = concealed (invisible)
가능한 배경 :
40 = black background
41 = red background
42 = green background
43 = orange background
44 = blue background
45 = purple background
46 = cyan background
47 = grey background
100 = dark grey background
101 = light red background
102 = light green background
103 = yellow background
104 = light blue background
105 = light purple background
106 = turquoise background
107 = white background
가능한 모든 색상 :
31 = red
32 = green
33 = orange
34 = blue
35 = purple
36 = cyan
37 = grey
90 = dark grey
91 = light red
92 = light green
93 = yellow
94 = light blue
95 = light purple
96 = turquoise
97 = white
이것들을 결합하여 다음과 같은 매개 변수를 만들 수도 있습니다.
di=1;4;31;42
LS_COLORS 변수에서 디렉토리는 녹색 배경으로 굵은 밑줄이 그어진 빨간색 텍스트로 표시됩니다!
터미널에서 이러한 모든 색상과 스타일을 테스트하려면 다음 중 하나를 사용할 수 있습니다.
for i in 00{2..8} {0{3,4,9},10}{0..7}
do echo -e "$i \e[0;${i}mSubdermatoglyphic text\e[00m \e[1;${i}mSubdermatoglyphic text\e[00m"
done
for i in 00{2..8} {0{3,4,9},10}{0..7}
do for j in 0 1
do echo -e "$j;$i \e[$j;${i}mSubdermatoglyphic text\e[00m"
done
done
ls 명령을 사용할 때 각 종류를 다음과 같이 정의하여 다른 종류의 파일을 변경할 수도 있습니다.
bd = (BLOCK, BLK) Block device (buffered) special file
cd = (CHAR, CHR) Character device (unbuffered) special file
di = (DIR) Directory
do = (DOOR) [Door][1]
ex = (EXEC) Executable file (ie. has 'x' set in permissions)
fi = (FILE) Normal file
ln = (SYMLINK, LINK, LNK) Symbolic link. If you set this to ‘target’ instead of a numerical value, the color is as for the file pointed to.
mi = (MISSING) Non-existent file pointed to by a symbolic link (visible when you type ls -l)
no = (NORMAL, NORM) Normal (non-filename) text. Global default, although everything should be something
or = (ORPHAN) Symbolic link pointing to an orphaned non-existent file
ow = (OTHER_WRITABLE) Directory that is other-writable (o+w) and not sticky
pi = (FIFO, PIPE) Named pipe (fifo file)
sg = (SETGID) File that is setgid (g+s)
so = (SOCK) Socket file
st = (STICKY) Directory with the sticky bit set (+t) and not other-writable
su = (SETUID) File that is setuid (u+s)
tw = (STICKY_OTHER_WRITABLE) Directory that is sticky and other-writable (+t,o+w)
*.extension = Every file using this extension e.g. *.rpm = files with the ending .rpm
보다 완전한 목록은 Bigsoft-LS_COLORS 구성에 있습니다 .
일부 배포판에서는 ow
"( OTHER_WRITABLE
) ( 기본값)을 읽을 수없는 "( )의 배경색을 녹색 배경의 굵지 않은 파란색 텍스트 로 변경할 수도 있습니다 .
예를 들어 파일 LS_COLORS="$LS_COLORS:di=1;33"
끝 .bashrc
에서 검은 색 바탕에 읽을 수있는 굵은 주황색 텍스트를 얻을 수 있습니다.
.bashrc 파일을 변경 한 후 변경 사항을 적용하려면 셸을 다시 시작하거나 실행해야합니다 source ~/.bashrc
.
참고 : 더 많은 명령을 콜론 과 결합 할 수 있습니다 ( 예 :
LS_COLORS=$LS_COLORS:'di=1;33:ln=36' ; export LS_COLORS; ls
출처:
.bashrc
-일부 색상은 작동하고 다른 색상은 다르게 보입니다. 폴더는 예를 들어 파란색 대신 녹색이지만 파일은 올바르게 보입니다. 뭐가 될수 있었는지?
/etc/bash.bashrc
LS_COLORS=$LS_COLORS:'tw=01;35:ow=01;35:' ; export LS_COLORS
매우 간단합니다. 이 세 줄을 ~ / .bashrc에 추가하십시오.
$ vi ~/.bashrc
export LS_OPTIONS='--color=auto'
eval "$(dircolors -b)"
alias ls='ls $LS_OPTIONS'
실행중인 bash 세션에서 변경 사항을 적용하려면 다음을 실행하십시오.
source ~/.bashrc
source ~/.bashrc
로그인 할 때마다 실행해야합니다 . 이것을 해결할 수있는 방법이 있습니까?
echo $SHELL
cmd 프롬프트에서 입력 하면 무엇을 얻 습니까? 나는 아니라고 확신합니다 /bin/bash
. 당신은 활동을 찾 .profile
거나 끝에 .login
추가 할 수 있습니다 source $HOME/.bashrc
. 행운을 빕니다.
이것은 LS COLORS 환경 변수로 사용하기에 적합한 extension : color 매핑 모음입니다.
Hegazi의 대답 외에도 dircolors 명령을 사용하여 실제로 디렉토리 색상과 다른 많은 색상을 제어 할 수 있습니다. 잘 문서화 된 구성 파일을 작성할 수 있습니다.
다음과 같이 홈 디렉토리에 .dircolor 파일을 작성할 수 있습니다.
dircolors -p > ~/.dircolors
그런 다음 ~ / .bashrc 파일에 줄을 추가하십시오.
eval "`dircolors -b ~/.dircolors`"
alias ls='ls --color=auto'
이것은 bash에 대한 $ LS_COLORS 변수를 만듭니다. csh의 경우 -c 플래그가 설정됩니다. 또한 ls 명령에 색상을 표시하도록 플래그를 지정합니다.
~ / .dircolor 파일 색상에서 위와 같이 DIR 속성 값을 편집하여 디렉토리의 색상 (또는 다른 색상에 포함 된 다른 파일 유형)을 변경하십시오. 특정 파일의 색상을 변경하거나 직접 정의 할 수도 있습니다.
이것은 일반적으로 사용되는 옵션이있는 ls 명령에 대한 나의 접근 방식입니다.
~ / .alias라는 파일에 다음 줄을 추가하십시오.
alias ll='ls -lhF --color=auto'
alias llt='ls -lht --color=auto'
alias lla='ls -alF --color=auto'
alias la='ls -A --color=auto'
alias l='ls -CF --color=auto'
alias ls="ls --color=auto"
~ / .bashrc에 다음 줄을 추가하십시오.
if [ -f ~/.alias ]; then
. ~/.alias
fi
--color=auto
받는 ls
별칭 - 상속과 다른 별칭을 설정
LS_COLORS=$LS_COLORS:'di=1;44:' ; export LS_COLORS
파란색 배경 위에 굵은 흰색으로 디렉토리를 표시하는 것이 더 좋습니다 .