디렉토리가 목록에 색상을 표시하지 않는 터미널


9

내 bash 세션에 색상이 표시되지 않는 이유를 모르겠습니다. 터미널과 iTerm을 시도했습니다.

나는 시도했다 :

  1. ls -G
  2. 설정 export CLICOLOR=1및export LSCOLORS=GxFxCxDxBxegedabagaced
  3. 태양 광 및 다른 것과 같은 다른 테마 사용

내 소프트웨어 버전은 다음과 같습니다.

  1. bash : GNU bash, 버전 3.2.51 (1)-릴리스 (x86_64-apple-darwin13)
  2. osx : 10.9.2

Homebrew를 설치했습니다

다른 정보가 도움이 될지 모르겠습니다. 나는 껍질에 많은 시간을 보낸다.이 문제는 매우 성 가신다 :)

편집 : 터미널 환경 설정에서 '터미널을 다음과 같이 선언하십시오 : xterm-256color'및 'ANSI 색상 표시'와 '굵은 텍스트에 밝은 색상 사용'


실행 해보십시오 printf '\e[32mtest\n'그게 문제의 다음 작동하는 경우, ls.
— 0942v8653

나는 또한이 문제를 겪고있다. 시도한 것을 확장하기 위해 coreutils의 gls 명령으로 문제가 지속됩니다. 위의 주석은 프롬프트 색상을 성공적으로 변경합니다. 다른 테마의 Terminal.app 환경 설정에서 색상을 변경하면 내 문제는 SolarizedDark 테마에있는 것으로 보입니다.
— agweber

답변:


4

Homebrew를 통해 GNU Core Utilities 를 설치하는 것이 좋습니다. 이렇게하면 lsOS X와 ​​함께 제공되는 FreeBSD 버전 대신 "Linux"버전 과 다른 강력한 도구가 제공됩니다.

brew update
brew install coreutils

그런 다음 다음을 사용하여 색상을 표시 할 수 있어야합니다.

gls --color

또한 경고를 읽고 PATH를 구성하여 gls일반적인 이름 과 같은 명령을 사용할 수 있습니다 ls.

$ brew info coreutils
coreutils: stable 8.23 (bottled)
https://www.gnu.org/software/coreutils
Conflicts with: ganglia, idutils
/usr/local/Cellar/coreutils/8.23 (214 files, 10M)
  Poured from bottle
/usr/local/Cellar/coreutils/8.23_1 (214 files, 10M) *
  Poured from bottle
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/coreutils.rb
==> Dependencies
Build: xz ✔
==> Caveats
All commands have been installed with the prefix 'g'.

If you really need to use these commands with their normal names, you
can add a "gnubin" directory to your PATH from your bashrc like:

    PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"

Additionally, you can access their man pages with normal names if you add
the "gnuman" directory to your MANPATH from your bashrc as well:

    MANPATH="/usr/local/opt/coreutils/libexec/gnuman:$MANPATH"

OS X의 기본 BSD ls 명령으로 CLICOLOR 환경 변수를 간단히 정의하여 gls (GNU ls)에서 색상을 사용할 수는 없습니다. 또한 BSD ls에서 색상을 활성화하는 -G 스위치는 GNU ls에서는 작동하지 않으며 BSD ls에서는 --color 작동하지 않습니다. 모든 ls 명령에 색상을 지정하려면 ls의 별칭을 정의하여 --color 스위치를 추가해야합니다. "man ls"(BSD 플레이버)에서 참조 : "-G 컬러 출력 사용.이 옵션은 환경에서 CLICOLOR을 정의하는 것과 같습니다."
— Mark Edington

coreutils를 설치 한 후 gls --color를 사용하면 LSCOLORS var의 색상이 아닌 기본 색상이 표시됩니다. 일반적인 이름으로 gnu 도구를 기본값으로 바꾸는 경로를 깨뜨 렸으므로 rm which ls은 / bin / ls로 돌아가서 정상적으로 작동했습니다. 놀랍게도 이것은 더 이상 찾을 수없는 현재 쉘을 화나게했지만 새로운 쉘은 잘 작동했습니다. bash는 rehash가 없으므로 / usr / local / opt / coreutils / libexec / gnubin / ls에서 왜 끊어 졌는지 이해할 수 없습니다.
— Aaron McMillin

1

Temrinal의 터미널> 환경 설정에서 사용중인 세션 유형에 대한 프로파일을 선택하고 고급 탭에서 사용중인 터미널 선언을 확인하십시오. 선택된 것은 ANSI 색상을 지원하지 않을 가능성이 높습니다. xterm-256color는 예상 한 것을 지원해야합니다.


방금 확인했습니다. 터미널은 이미 xterm-256color로 설정되어 있습니다 (이 정보 및 기타 정보를 반영하기 위해 업데이트 된 질문)
— Shahbaz
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.