As regras são as mesmas que para ls
, o que faz um trabalho melhor documentando-o em man ls
. Citando:
Using color to distinguish file types is disabled both by default and
with --color=never. With --color=auto, ls emits color codes only when
standard output is connected to a terminal. The LS_COLORS environment
variable can change the settings. Use the dircolors command to set it.
Por isso, o comando só adicionará a formatação de cor quando a saída estiver indo para um terminal e não, digamos, quando estiver indo para um duto onde o programa que consome o duto pode não manipular bem a formatação de cores.