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


9

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

나는 시도했다 :

  1. ls -G
  2. 설정 export CLICOLOR=1export 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.