Ответ 1
Вероятно, вы видите результат LSCOLORS
, который вы можете найти на странице ls man или Google.
Причина, по которой вы видите это с рыбой, а не, скажем, bash, заключается в том, что рыба обертывает ls функцией, которая передает флаг -G, как вы можете видеть:
> functions ls
function ls --description 'List contents of directory'
command ls -G $argv
end
Вы можете изменить LSCOLORS, чтобы быть чем-то другим, например. на OS X:
set -Ux LSCOLORS gxfxbEaEBxxEhEhBaDaCaD
Это делает универсальную переменную среды, поэтому вам просто нужно запустить ее один раз.
Или вы можете полностью отключить его, перезаписав функцию:
function ls ; command ls ; end
funcsave ls
Это создает и сохраняет функцию ls
, которая имеет приоритет над связанным.