Mac OS X에서 ls --color = auto를 사용하려면 어떻게해야합니까?


답변:


78

ls실제로 Bash와 별개입니다. 맥 OS X는의 BSD 버전이 ls필요 -G커맨드 라인, 또는에 CLICOLOR(아마도 LSCOLORS환경에서 참조).

자세한 내용 man ls은 참조하십시오 .


5
같게. 나는 한 alias ls='ls -G'스노우 레오파드 (Snow Leopard)에 내 .bashrc에 설정.
ayaz

어떤 이유로 든 CLICOLOR=Y내 Mac에서 작동이 중지되었습니다. alias ls='ls -G'강제 ls로 착색합니다. 나는 이것을 대화식 터미널에 대해서만 정의합니다.
DKroot

31

터미널 창을 열고 다음을 입력하십시오.

alias ls='ls -G'

그리고 맞았다 Enter!


10

Homebrew를 사용하십시오 .

brew install coreutils

이렇게하면 g모든 명령 앞에 접두사가 붙습니다 (예 : glsfor ls). 파일의 별칭을 자동으로 지정하는 파일을 제공하는 옵션을 제공합니다.

이 모든 별칭 일을 할 필요없이 직접 설치할 수있는 옵션이, 그래서 대신 설치 MacPorts를에와 있는지 확실하지 않았다 이런 짓을 .


1
결과는 다음과 같습니다. 실제로 이러한 명령을 일반 이름과 함께 사용해야하는 경우 다음을 수행 할 수 있습니다.실제로 강조 합니까? 단점은 무엇입니까?
z0r

그리고 당신은 archive.org에 페이지를 보관하지 않았으며, 이제 마지막 단락의 링크가 사라졌습니다
barlop

5

GNU 및 * BSD / darwin ls와의 호환성

~ / .profile

#for *BSD/darwin
export CLICOLOR=1

ls --color=auto &> /dev/null && alias ls='ls --color=auto' ||

~ / .bashrc (Linux의 bash가 항상 ~ / .profile을 읽지 만 ARCH의 zsh는 읽지 않는 경우가 기억 나지 않습니다)

[[ -f $HOME/.profile ]] && source $HOME/.profile

6
이 코드를 설명 할 수 있습니까?
bwDraco

1
* BSD 및 Darwin 시스템에 CLICOLOR 환경 변수 설정-ls로 설정하고 다른 유틸리티가 색상으로 표시되면 GNU ls (Linux의 경우)는 무시합니다. "ls --color = auto"가 실패하지 않는 경우 (종료 상태 = 0)-GNU 버전의 ls가 있고 대화 형 모드에서 색상 코드를 그리는 별칭을 만드는 경우 CLICOLOR로 인해 별칭이 필요하지 않습니다. 변하기 쉬운. "&> / dev / null"은 무언가 실패하거나 괜찮다면 stderr과 stdout을 표시하지 않습니다. 내 리눅스와 osx에서 작동합니다. (ps는 osx의 bash와 freebsd는 .bashrc를 읽지 않으므로 이미 .profile에 넣으십시오.)
Victor Gavro

2

의 다른 버전을 설치해야합니다 ls. 리눅스에서 일반적으로 사용되는 것은 GNU coreutils 프로젝트에서 온 것입니다.

macports , fink 또는 homebrew 에서 빌드 및 설치 또는 설치할 수 있습니다 .


4
내 생각에 그것은 과잉입니다. ls기존 버전의에서 동일한 기능이 약간 다르게 지원되는 경우 별도의 버전을 설치할 필요가 없습니다 ls.
ayaz

좋은 지적. 다시, 착색 된 ls는 결코 나의 취향이 아니었다. alias ls='ls -F'
Doug Harris

alias ls='ls -FG'-두 세계에서 최고입니다!
mipadi

1
나는 homebrew를 사용 하여이 작업을 수행합니다. Mac과 * nix 컴퓨터를 모두 사용하고 터미널이 동일하게 보이도록하려면 과도하지 않습니다. 이렇게하면 모든 컴퓨터에서 동일한 구성 파일을 사용할 수 있습니다. gls원본 으로 설치되어 있으며 원본을 대체하지 않으므로 실제로 단점이 없습니다.
senderle

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.