Altera a cor dir na saída do bash

3

No Mac OSX, estou tentando alterar a cor dir quando ls é gerado no bash shell. Então coloquei esta linha no final do meu arquivo .bashrc e recarreguei.

LS_COLORS=$LS_COLORS:'di=0;32:' ; export LS_COLORS e . ~/.bashrcc

A saída de echo "$LS_COLORS" é :di=0;35::di=0;35::di=0;32:

Mas eu não estou recebendo a luz verde que estou esperando. Obrigado

    
por user154983 04.02.2016 / 18:17

1 resposta

3

  1. O Mac usa o BSD ls . Veja man ls para detalhes.
  2. O formato de LS_COLORS é diferente.

    Especificamente, veja LESS='+/^[[:space:]]*LSCOLORS' man ls

  3. O nome da variável nem é LS_COLORS , é LSCOLORS .

Os links que achei mais úteis para descobrir isso foram este post e este artigo que foi vinculado a partir da postagem do blog.

O valor padrão para LSCOLORS é exfxcxdxbxegedabagacad . Para deixar tudo em sua cor padrão, exceto os diretórios, e torná-los verdes em vez de azuis, coloque o seguinte no seu ~/.bash_profile :

export LSCOLORS=cxfxcxdxbxegedabagacad

Você também precisará definir a variável CLICOLOR (com export CLICOLOR= ) ou alias ls to ls -G . Mas na sua captura de tela acima você tem saída em cores, por isso suponho que você já tenha feito uma delas.

Resposta original:

No Mac OS, ls usa a opção -G para colorir a saída.

De man ls em um Mac:

 -G      Enable colorized output.  This option is equivalent to defining
         CLICOLOR in the environment.  (See below.)

Execute ls -G e você terá uma saída em cores.

Eu também recomendo adicionar:

alias ls='ls -GF'

para o seu ~/.bash_profile . Esse é o alias que tenho lá. A opção -F adiciona o / após os nomes dos diretórios, * após os executáveis, etc.

    
por 04.02.2016 / 23:45

Tags