Mac OS X 터미널에서 색상을 어떻게 그 리핑 할 수 있습니까?


39

나는 최근에 Mac OS XI에서 내 쉘에서 이것을 설정하여 ~/.profile사용할 때 grep색상 (흰색 빨간색)을 인쇄 할 수 있음을 발견했습니다 .

alias grep='GREP_COLOR="1;37;41" LANG=C grep --color=auto'

그러나 별칭을 설정하는 것은 일종의 해킹 방법처럼 보입니다. 이전에는 운없이 시도했습니다.

export GREP_COLOR=always           # works fine in Linux

그리고 나는 또한 시도했다 :

export GREP_COLOR="1;37;41"

별칭을 설정하는 것보다 더 좋은 방법이 있습니까?


나는 당신의 질문의 요점을 보지 못합니다. 별명은이 작업을 수행하는 방법입니다. 그게 다야. export환경 변수 (예 : in .bash_profile및 define alias grep='grep --color')가 완료되었습니다.
Daniel Beck

답변:


60

맥에 Grep_color @lupincho에 의해 제안,이 작업 벌금 보인다 별칭을 사용하지 않습니다 :

export GREP_OPTIONS='--color=always'
export GREP_COLOR='1;35;40'

13
좋은 해결책으로 이것을 +1하십시오 grep: warning: GREP_OPTIONS is deprecated; please use an alias or script. 그러나 GREP_OPTIONS를 설정하면이됩니다 . 이와 같은 것이 이제 선호됩니다 :alias grep="`which grep` --color=always"
joelittlejohn

2
xargs가있는 파이프에서 grep을 사용할 때 @joelittlejohn이 작동하지 않습니다. 예 :find /usr/share -name '*.txt' |xargs grep testing
rfabbri

1
@rfabbri 나는 이것이 더 이상 사용되지 않는 grep 팀을 따라야 할 것 같다 :)
joelittlejohn

3
--color=always위험합니다. 쉘에서 실행되는 스크립트는 옵션을 상속하며 grep이 스크립트 내부에 출력하기 위해 색상 코드를 주입하기 시작할 때 매우 신비한 실패를 유발합니다. --color=auto이 문제를 일으키지 않습니다.
Sampo

1
@joelittlejohn OSX의 기본 grep에는 해당되지 않습니다. High Sierra 10.13에서도 GREP_OPTIONS를 감가 상각하지 않은 FREEBSD grep 2.5.1을 사용합니다. 이는 gnu / grep에만 해당됩니다
cde
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.