Como obtenho ls --color = auto para trabalhar no Mac OS X?

62

Estou tentando mover minha configuração bash do Ubuntu para o Mac OS X e parece que o ls é um pouco diferente. Por exemplo, não aceita a opção --color .

Como faço para que isso funcione?

    
por cfischer 02.09.2010 / 16:53

6 respostas

71

ls é realmente separado do Bash. O Mac OS X tem uma versão BSD de ls , que requer -G na linha de comando ou CLICOLOR (e talvez LSCOLORS ) no ambiente.

Veja man ls para mais informações.

    
por 02.09.2010 / 17:23
29

Abra a janela do terminal e digite:

alias ls='ls -G'

Em seguida, pressione Enter e pronto!

    
por 17.03.2013 / 19:18
11

Use o Homebrew .

brew install coreutils

Observe que isso lançará um prefixo de g na frente de todos os comandos (por exemplo, gls para ls ). Ele fornece uma opção para criar um arquivo que aliasse estes para você automaticamente.

Eu não tinha certeza se havia uma opção para instalá-los diretamente, sem ter que fazer todo o alias, então, em MacPorts instalados e fez isso .

    
por 16.09.2011 / 19:40
4

compatibilidade para GNU e * BSD / darwin ls

~ / .profile

#for *BSD/darwin
export CLICOLOR=1

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

~ / .bashrc (não me lembro se bash no Linux sempre lê ~ / .profile, mas não o meu zsh no ARCH)

[[ -f $HOME/.profile ]] && source $HOME/.profile
    
por 17.02.2015 / 17:35
2

Você precisará instalar uma versão alternativa de ls . O normalmente usado no Linux é do projeto GNU coreutils .

Você pode criar e instalar ou instalar a partir de macports , fink ou homebrew .

    
por 02.09.2010 / 17:39
1

Eu uso este script em Perl que escrevi no AIX . É útil se você estiver em um sistema que não oferece suporte a --color e também onde você não tem o sudo para instalar pacotes.

Deve funcionar no Macintosh também.

    
por 29.01.2015 / 15:16