LS_COLORS의 색상을 나열하는 방법은 무엇입니까?

LS_COLORS의 색상을 나열하는 방법은 무엇입니까?

파일 형식이나 확장자에 따라 eval "dircolors -b"사용되는 색상을 표시 하는 데 사용되었던 것으로 기억합니다. LS_COLORS단순한 색상 값 그 이상을 보여줍니다.하지만 색상 자체는요..png 표시된 색상을 보거나 .ogg보관할 수 있으며 필요한 경우 사용자 정의 파일을 통해 변경할 수 있습니다.

내가 찾은 출력은 eval "dircolors -b"더 이상 색상이 지정되지 않습니다.

어떻게 다시 돌려받을 수 있는지 설명해 주실 수 있나요? 일부 환경 변수가 설정되지 않았을 수 있습니다. 그렇지 않으면 해결 방법이 있습니까?

답변1

다음 스크립트를 사용해 보세요.

( # Run in a subshell so it won't crash current color settings
    dircolors -b >/dev/null
    IFS=:
    for ls_color in ${LS_COLORS[@]}; do # For all colors
        color=${ls_color##*=}
        ext=${ls_color%%=*}
        echo -en "\E[${color}m${ext}\E[0m " # echo color and extension
    done
    echo
)

산출:

출력 스크린샷

답변2

이 버전에는 몇 가지 추가 정보가 포함되어 있으며 전체 행에 색상이 지정되지 않습니다.

eval $(echo "no:global default;fi:normal file;di:directory;ln:symbolic link;pi:named pipe;so:socket;do:door;bd:block device;cd:character device;or:orphan symlink;mi:missing file;su:set uid;sg:set gid;tw:sticky other writable;ow:other writable;st:sticky;ex:executable;"|sed -e 's/:/="/g; s/\;/"\n/g')           
{      
   IFS=:     
   for i in $LS_COLORS     
    do        
        echo -e "\e[${i#*=}m$( x=${i%=*}; [ "${!x}" ] && echo "${!x}" || echo "$x" )\e[m" 
    done       
}

부분답변Askubuntu의 @karthick87 작성
또한 아래 답변을 참조하세요.ls 출력에서 ​​녹색 배경이 나타나는 이유는 무엇입니까?

관련 정보