답변1
이는 ls
색상 지정이 아니라 zsh
( GNU가 완성 목록에서 하는 zsh
것처럼 파일 색상을 지정하도록 구성할 수 있음에도 불구하고) 수행됩니다.ls
ls
여기서 녹색 배경과 파란색 전경은 고정 비트가 없고 다음을 통해 쓸 수 있는 디렉터리에 대한 GNU의 기본 구성(Macos 용 --color
FreeBSD가 아님 ) 에서 얻을 수 있는 색상입니다.ls
/bin/sh
다른 사람(소유자 및 그룹 소유자보다).
디렉터리에 이러한 권한이 있으면 일반적으로 문제가 있음을 의미합니다. 너무 느슨해요. 따라서 불쾌한 색상이 보이면 이를 고칠 수 없기 때문에 좋은 것입니다.
dircolors -p
기본 구성 표시:
$ dircolors -p | grep -w -e 34 -e 42
# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
DIR 01;34 # directory
STICKY_OTHER_WRITABLE 30;42 # dir that is sticky and other-writable (+t,o+w)
OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky
(ANSI 색상 이스케이프 시퀀스에서 34는 전경 파란색에 대한 코드이고 42는 배경 녹색에 대한 코드입니다.)
STICKY_OTHER_WRITABLE(녹색 바탕에 검정색)은 누구나 쓸 수 있는 디렉터리와 일치합니다(예: ) /tmp
. 그러나 적어도 사용자(디렉터리 소유자 이외)는 자신이 소유하지 않은 파일을 삭제하거나 이름을 바꿀 수 없기 때문에 OTHER_WRITABLE만큼 나쁘지는 않습니다.
이러한 기본값을 변경하려면 이 출력을 dircolors -p
파일로 리디렉션할 수 있습니다.
dircolors -p > ~/.config/dircolors
원하는 대로 편집하세요. 예를 들어 OTHER_WRITABLE을 더 충격적이고 견딜 수 없는 것으로 변경해 보세요.
OTHER_WRITABLE 5;48;5;210;38;5;47 # some shade of green on some shade of pink
# background and blinking to urge users
# to fix the permissions
(이것은 일반적으로 256 팔레트를 지원하는 터미널에서 인식되는 이스케이프 시퀀스를 사용합니다. 이제 많은 터미널은 너무 귀찮기 때문에 처음 5번 깜박이는 것을 무시합니다.)
다음 항목에 추가합니다 ~/.zshrc
.
eval "$(dircolors -b ~/.config/dircolors)"
$LS_COLORS
이러한 설정을 환경 변수에 로드하려면 로 OTHER_WRITABLE 5;48;5;210;38;5;47
표시됩니다 ow=48;5;210;38;5;47
.
완성 시 동일한 색상을 표시 하려면 zsh
최소한 다음이 필요합니다(위 줄 이후 ~/.zshrc
).
autoload -Uz compinit
compinit
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
적절하게 조정하고 싶을 수도 있지만 compinstall
메뉴를 탐색하면 다음 단계를 안내받을 수 있습니다.
3. Styles for changing the way completions are displayed and inserted.
➡️
3. Configure coloured/highlighted completion lists, selection of items
and scrolling.
➡️
1. Use coloured lists for listing completions.
➡️
1. Using the default colours.
2. Using the colours already set up for GNU ls via the $LS_COLORS
environment variable. Note this must be set before the completion
configuration code is executed.
3. Turn colouring off.
3 ➡️ 3 ➡️ 1 ➡️ 3을 선택하면 zstyle
위의 줄이 ~/.zshrc
.
답변2
같은 문제가 있습니다.
먼저 ls
실제로 무엇을 사용하고 있는지 확인하세요 which ls
. 제 경우 별칭은 be 입니다 gls --color=tty
. 제가 직접 설정한 것이 아니라 zsh 또는 ohmyzsh입니다.
unalias ls
배경색 만 없애주세요
텍스트 전경색을 유지하려면 별칭 ls
이나 ls -G
다른 것