홈페이지 » 어떻게 » ls 명령에서 디렉토리 및 파일의 색상을 변경하는 방법

    ls 명령에서 디렉토리 및 파일의 색상을 변경하는 방법

    당신이 ls Bash에서 명령을 사용하면 볼 수있는 디렉토리와 파일의 유형에 따라 색상이 구분됩니다. 자신 만의 색 구성표를 사용자 정의하여 다른 텍스트 색, 배경색 및 굵게 및 밑줄과 같은 서식을 선택할 수 있습니다.

    작동 방법

    색 구성표는 LS_COLORS 변수에 저장됩니다. 현재 색 구성표를 보려면 변수의 내용을 인쇄하도록 Bash에 지시 할 수 있습니다.

    echo $ LS_COLORS

    파일 형식과 숫자 코드의 긴 목록이 표시됩니다. 이와 같은 목록을 직접 작성하는 방법에 대해 설명하겠습니다..

    이 문제를 해결하기 전에 LS_COLORS 변수의 현재 내용을 다른 변수에 저장하는 것이 좋습니다. 이렇게하면 쉘에서 로그 아웃하고 다시 로그인하거나 터미널 창을 닫았다가 다시 열지 않고도 기본 설정을 빠르게 복원 할 수 있습니다. LS_COLORS 변수의 현재 내용을 ORIGINAL이라는 새 변수에 저장하려면 다음을 실행하십시오.

    ORIGINAL = $ LS_COLORS

    언제든지 다음 명령을 실행하여 변경 사항을 실행 취소하고 기본 색상을 복원 할 수 있습니다.

    LS_COLORS = $ ORIGINAL

    변경 사항은 파일을 편집하여 새 기본값으로 만들 때까지 항상 임시입니다. 언제든지 로그 아웃했다가 다시 서명하거나 터미널 창을 닫았다가 다시 열어 색을 기본 설정으로 복원 할 수 있습니다. 그러나 이렇게하면 단일 명령을 사용하여 쉽게 수행 할 수 있습니다..

    사용자 정의 색상 설정 방법

    LS_COLORS 변수는 연관된 색상 코드와 함께 파일 유형 목록을 포함합니다. 여러 파일 유형에 대해 서로 다른 색상을 지정하므로 기본 목록이 길다..

    이것이 어떻게 작동 하는지를 보여주기위한 기본적인 예제를 시작하겠습니다. 디렉토리의 색상을 기본 굵은 파란색에서 굵은 빨간색으로 변경한다고 가정 해 보겠습니다. 다음 명령을 실행하여 이렇게 할 수 있습니다.

    LS_COLORS = "디 = 1; 31"

    그만큼 디 = 1; 31 조금 말하다. ls 그 디렉토리 ()는 (=) 굵게 (1;) 빨간색 (31).

    그러나 이것은 디렉토리를 하나의 색상으로 정의하고 모든 다른 유형의 파일을 기본 색상으로 유지하는 아주 단순한 LS_COLORS 변수 일뿐입니다. .desktop 파일 확장명이 밑줄로 표시된 시안 색 파일을 만들려고한다고 가정 해 봅시다. 다음 명령을 실행하여 이렇게 할 수 있습니다.

    LS_COLORS = "디 = 1 : 31 : *. 바탕 화면 = 4, 36"

    이것은 ls 그 디렉토리 ()는 (=) 굵게 (1;) 빨간색 (31) 및 (:) .desktop으로 끝나는 모든 파일 (* .desktop)은 (=) 밑줄 친 (4;) 시안36).

    이것은 파일 형식 및 색상 목록을 조합하는 프로세스입니다. 원하는만큼 지정할 수 있습니다. filetype = color 형식으로 콜론 (:) 문자로 구분합니다..

    자신의 목록을 작성하려면 색상 코드 및 파일 유형 코드 목록을 알아야합니다. 이것은 Bash 프롬프트에서 색상을 변경할 때 사용하는 것과 동일한 숫자 색상 코드를 사용합니다.

    전경 텍스트의 색상 코드 목록은 다음과 같습니다.

    • 검정 : 30
    • 파란색 : 34
    • 시안 : 36
    • 녹색 : 32
    • 보라색 : 35
    • 빨간색 : 31
    • 흰색 : 37
    • 노란색 : 33

    예를 들어 노란색 텍스트는 33 번 색상 코드이므로 디 = 33 디렉토리를 노랑으로 만드는 방법.

    다음은 텍스트 색상 속성 목록입니다.

    • 일반 텍스트 : 0
    • 굵게 또는 옅은 텍스트 : 1 (터미널 에뮬레이터에 따라 다릅니다.)
    • 희미한 텍스트 : 2
    • 밑줄 친 텍스트 : 4
    • 텍스트 깜박임 : 5 (대부분의 터미널 에뮬레이터에서는 작동하지 않습니다.)
    • 반전 된 텍스트 : 7 (전경 및 배경색이 반전되므로 현재 텍스트가 검은 색 바탕에 흰색 텍스트 인 경우 흰색 배경에 검정색 텍스트가 표시됩니다.)
    • 숨겨진 텍스트 : 8

    속성 또는 하나 이상의 색상 코드를 지정할 때 세미콜론 (;) 문자로 코드 목록을 구분하십시오. 일반 텍스트는 0을 지정하지 않아도됩니다. 여기에 속성을 지정하지 않으면 일반 텍스트가 사용됩니다..

    예를 들어 굵게 표시된 텍스트는 색상 코드 1이고 노란색 텍스트는 색상 코드 33이므로 디 = 1; 디렉토리를 굵은 노란색으로 만들려면. 둘 이상의 속성을 지정할 수도 있습니다. 예를 들어 다음과 같이 사용할 수 있습니다. 디 = 1, 4, 33 디렉토리를 굵은 글씨로 만들려면 밑줄 친 노란색.

    배경색 코드 목록은 다음과 같습니다.

    • 검정색 배경 : 40
    • 파란색 배경 : 44
    • 청록색 배경 : 46
    • 녹색 배경 : 42
    • 자주색 배경 : 45
    • 빨간색 배경 : 41
    • 흰색 배경 : 47
    • 노란색 배경 : 43

    예를 들어, 파란색 배경은 색상 코드 44이므로, 디 = 44 디렉토리에 파란색 배경을 사용합니다. 배경색 코드, 전경색 코드 및 원하는만큼의 속성을 결합 할 수도 있습니다. 예를 들어, 디 = 1, 4, 33, 44 파란색 배경에 굵은 글씨로 밑줄이 그어진 노란색 텍스트를 줄 것입니다..

    파일 형식 코드 목록은 다음과 같습니다.

    • 디렉토리 : di
    • 파일 : fi
    • 심볼릭 링크 : ln
    • 명명 된 파이프 (FIFO) : 파이
    • 소켓 : 그래서
    • 블록 장치 : bd
    • 문자 장치 : cd
    • 고아 심볼릭 링크 (더 이상 존재하지 않는 파일을 가리킴) : 또는
    • 누락 된 파일 (고아 기호 링크가 가리키는 누락 된 파일) : mi
    • 실행 파일 ( "x"권한 있음) : ex
    • * .extension : 지정한 확장자로 끝나는 파일. 예를 들어, .txt로 끝나는 파일에는 * .txt를 사용하고, .mp3으로 끝나는 파일에는 * .mp3을, .desktop으로 끝나는 파일에는 * .desktop을 사용합니다. 원하는만큼 다른 파일 확장명을 지정할 수 있습니다..

    다음과 같이 여러 가지 유형의 파일 유형 코드를 원하는만큼 다른 색상으로 지정하여 : 문자로 구분하십시오. 이 과정을 반복하여 LS_COLORS 변수를 어셈블합니다..

    예를 들어 디렉토리에 굵은 보라색 텍스트, 실행 파일에 밑줄이 그어진 빨간색 텍스트, .mp3 파일에 대한 빨간색 배경에 굵은 녹색 텍스트를 사용한다고 가정 해 봅시다. 위의 목록에서 파일 유형 코드와 색상 코드를 조합하면 다음을 얻을 수 있습니다.

    LS_COLORS = "디 = 1; 35 : 예 = 4; 31 : * .mp3 = 1; 32; 41"

    새로운 기본 색을 설정하는 방법

    이제 현재 Bash 세션에서 작동하는 사용자 정의 LS_COLORS 변수가 있습니다. 그러나, 영구적으로 만들고 싶어서, 새로운 Bash 세션을 시작할 때마다 이것을 기억할 필요없이 자동으로 사용됩니다..

    사용자 정의 LS_COLORS 변수와 다른 Bash 변수를 사용자 계정의 .bashrc 파일에 추가하여 설정할 수 있습니다. 이 파일은 ~ / .bashrc에 있습니다. 따라서 사용자 이름이 bob이면 /home/bob/.bashrc에서 찾을 수 있습니다. 환경 변수를 설정하는 다른 방법도 있지만 이것은 간단한 방법입니다.

    먼저, 선호하는 텍스트 편집기에서이 파일을 엽니 다. 예를 들어 여기서 nano를 사용 하겠지만 vi, emacs 또는 원하는 것을 사용할 수 있습니다..

    나노 ~ / .bashrc

    다음과 같이 사용자 정의 LS_COLORS 변수를 파일 끝의 새 행에 추가하십시오.

    LS_COLORS = "디 = 1; 35 : 예 = 4; 31 : * .mp3 = 1; 32; 41"

    파일을 저장하고 종료하십시오. nano에서는 Ctrl + O를 누른 다음 Enter 키를 눌러 저장하고 Ctrl + X를 눌러 종료합니다..

    새 Bash 세션을 시작할 때마다 Bash는 .bashrc 파일을 읽고 LS_COLORS 변수를 자동으로 설정합니다. 나중에 색상을 변경하려면 .bashrc 파일로 돌아가 LS_COLORS 행을 편집하십시오..

    또한 삭제할 수 있습니다. LS_COLORS = 기본 색상을 다시 사용하기 위해 .bashrc 파일에 추가 한 행. LS_COLORS 값을 설정하지 않으면 Bash는 기본 색상을 사용합니다.