A documentação completa de ls
( info '(coreutils) ls invocation'
ou a versão on-line ), tem uma solução provável:
Note that using the ‘--color’ option may incur a noticeable
performance penalty when run in a directory with very many entries,
because the default settings require that ‘ls’ ‘stat’ every single
file it lists. However, if you would like most of the file-type
coloring but can live without the other coloring options (e.g.,
executable, orphan, sticky, other-writable, capability), use
‘dircolors’ to set the ‘LS_COLORS’ environment variable like this,
eval $(dircolors -p | perl -pe \
's/^((CAP|S[ET]|O[TR]|M|E)\w+).*/$1 00/' | dircolors -)
and on a ‘dirent.d_type’-capable file system, ‘ls’ will perform
only one ‘stat’ call per command line argument.
Se você adicionar sobrecarga de rede a stat
tudo em todo o diretório, seu atraso começa a ser compreensível.
Você também pode usar uma invocação de ls
com --color=off
ou não --color
.