Не удалось заставить ls распознать LS_OPTIONS или LS_COLORS?

1822
A T

Попытка получить --color=autoв качестве lsаргумента по умолчанию .

$ ls --version ls (GNU coreutils) 8.21 … $ echo $LS_COLORS no=00:fi=00:di=00;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=00;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.ogg=01;35:*.mp3=01;35:*.wav=01;35: $ echo $LS_OPTIONS --color=auto 

К сожалению, когда я бегу, lsя все еще получаю неокрашенный вывод (бег ls --color=autoвручную дает мне цвета).

Как сделать аргумент по --color=autoумолчанию ls?

0
Имеет ли псевдоним различные варианты? Попробуйте 'напечатайте ls', чтобы видеть, является ли это псевдонимом. \ ls должен запускать непроверенную ls. jaychris 10 лет назад 0
Спасибо, но все, что я получаю, это абсолютный путь к `ls`, который я установил в` $ HOME \ opt \ bin \ ls`… A T 10 лет назад 0

2 ответа на вопрос

2
pixelbeat

I think you might have thought that GREP_OPTIONS being supported implies that LS_OPTIONS would be too, as in: https://stackoverflow.com/questions/793483/unable-to-put-colors-for-ls-by-ls-options

This is not the case though, so you're best doing something like this in your bashrc or equivalent:

alias ls='ls --color=auto' 
Я слышал, что использование псевдонима, в котором вместо него может быть задана переменная среды ... все хорошо, теперь это работает A T 10 лет назад 0
0
Edward

Более трех лет опоздал на эту вечеринку, но я просто работаю над аналогичной проблемой, и у меня есть больше информации для будущих искателей.

Кажется, что пока grepактивно ищет GREP_OPTIONS, lsНЕ ищет LS_OPTIONS. Так что вам придется сделать что-то вроде alias ls='ls $LS_OPTIONS '. Вы можете сами решить, стоит ли это делать, в отличие от псевдонима, в котором перечислены нужные параметры.

(Между прочим, если какие-то люди с острыми глазами задаются вопросом, почему у меня есть конечный пробел в этом значении псевдонима, это из-за этой строки из раздела ALIASES страницы руководства bash (GNU bash, version 4.3.42 (1) -release): «Если последний символ значения псевдонима является пустым, то следующее слово команды, следующее за псевдонимом, также проверяется на расширение псевдонима. Мне это кажется удобным, поэтому я ставлю конечный пробел во всех моих псевдонимах.)