Incapaz de colocar cores para ls por ls_options
Pergunta
Eu descobri que você pode ter o seguinte para Grep no .bashrc
# puts colors for all grep commands
export GREP_OPTIONS='--color=auto'
Não consegui obter o comando semelhante para que ls_options funcionem.
Existe alguma outra maneira que não seja a seguinte para dar cores para o seu comando LS?
alias ls='ls -Gh'
Solução
Aqui está uma solução completa:
# BSD ls
export LSCOLOR='exfxcxdxbxegedabagacad'
# GNU ls and others (for example, tree)
export LS_COLORS='di=34;40:ln=35;40:so=32;40:pi=33;40:ex=31;40:bd=34;46:cd=34;43:su=0;41:sg=0;46:tw=0;42:ow=0;43:'
if [ "$(uname -s)" = 'Linux' ]; then
# GNU ls
alias ls='ls --color=auto'
else
# Assume BSD ls
alias ls='ls -G'
fi
Outras dicas
Para LS com cores para funcionar, você deve fazer o seguinte:
alias ls='ls -G'
export CLICOLOR=1
export LSCOLORS=ExFxCxDxBxegedabagacad
export TERM=xterm-color
Como outros disseram, alias ls
Com opções explícitas, realiza o que você deseja. Se, no entanto, você estiver especialmente interessado em usar a variável de ambiente LS_Options, bem, você ainda precisa de um alias: alias ls='ls $LS_OPTIONS '
Você definiria LS_Options para qualquer sequência de opções de linha de comando válidas para ls
. Corre ls --help
ou man ls
na linha de comando para ver quais opções estão disponíveis. No meu sistema Linux (OpenSuse 42.2), com GNU ls
v8.25, você obteria saída colorida adicionando a opção --color=auto
.
Então você colocaria o seguinte no seu arquivo ~/.profile ou ~/.bashrc:
export LS_OPTIONS="--color=auto"
alias ls="ls $LS_OPTIONS "
Para adicionar opções adicionais à variável de ambiente ou ao alias, basta adicioná-los (separados por espaços) dentro das citações duplas.