Как заставить `ls` покрасить вывод по умолчанию, не устанавливая псевдоним?


45

Я не хочу псевдоним ( alias ls='ls --color'), и я ранее настроил это на Mac OSX, используя CLICOLORпеременную окружения, которая волшебным образом принесла цвета ls. Сейчас я нахожусь в Linux (Arch x86-64) с xtermочень простой настройкой, и я не могу сделать lsвывод цвета (используя lsдословно). Я сделать получить цвет при использовании --colorпереключателя.

Нет ли способа добиться этого? Соответствие POSIX было бы неплохо :-)

Ответы:


67

Нет пути: страница man ls покажет вам, что значением по умолчанию (для --color) является 'none' - т.е. никогда не используйте цвет.

По какой причине вы не хотите использовать псевдонимы? Я выздоравливающий пользователь Red Hat, поэтому каждый раз, когда я устанавливаю новый дистрибутив, я устанавливаю три псевдонима ls примерно так:

## Colorize the ls output ##
alias ls='ls --color=auto'

## Use a long listing format ##
alias ll='ls -la'

## Show hidden files ##
alias l.='ls -d .* --color=auto'

2
Нет причин, по которым я не могу - я был на Mac OSX на днях, и он поддерживал то, CLICOLORчто я считал стандартным (вы всегда склонны думать, что эти вещи стандартны). И я также всегда думал, что псевдонимы - это скорее модифицированное решение. Но они будут делать только штраф :-)
атп

17
На Mac OSX вы можете использоватьalias ls='ls -G'
Гал Браха

2
и добавьте alias grep='grep --color'к этому;)
Амир Хоссейн

Положите их вместе, как это такalias ll='ls -la --color=auto'
HackSlash

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.