Как раскрасить вывод ls?


22

Я использую CentOS в текстовом режиме Linux. Когда я запускаю команду ls /usr/, вывод слишком труден для чтения (темно-синий на черном). Как я могу изменить цвет текста?

Снимок экрана с выводом ls

Ответы:


19

Если вы хотите изменить свои цвета в консоли, то есть вне X , то вы можете указать цвета в вашем .bashrc, например, так:

if [ "$TERM" = "linux" ]; then
    echo -en "\e]P0222222" #black
    echo -en "\e]P8222222" #darkgrey
    echo -en "\e]P1803232" #darkred
    ....
    fi

Где вы определяете черный как #222222См. Этот пост для деталей: http://phraktured.net/linux-console-colors.html

Если вы работаете в X , то вы можете настроить свои настройки, определив свои цвета .Xresourcesследующим образом:

!black
 *color0:  #3D3D3D
 *color8:  #5E5E5E
!red
 *color1:  #8C4665
 *color9:  #BF4D80
 ...

и затем получение этого файла при запуске X, как правило, из вашего .xinitrc:

xrdb -merge ~/.Xresources

Arch Wiki имеет страницу на .Xresources, которая объясняет все параметры: https://wiki.archlinux.org/index.php/Xresources

Еще одно усовершенствование, которое вы можете сделать в X или нет, - указать все различные типы файлов, которые вы хотите закрасить, и соответствующие цвета в .dir_colorsфайле, например, так:

.xinitrc       01;31 
.Xauthority    01;31
.Xmodmap       00;31
.Xresources    01;33
 ...

Чтобы начать, скопируйте /etc/dir_colorsв /homeкаталог своего пользователя и внесите изменения. Тогда источник это от вашего .bashrcс eval $(dircolors -b ~/.dir_colors)Это позволит вам мелкозернистый контроль над цветами файлов и типов файлов , когда вы используете ls.

Вы можете найти (невероятно подробный и подробный) .dir_colorsпример файла здесь: https://github.com/trapd00r/LS_COLORS/blob/master/LS_COLORS

Комбинируя все три подхода, вы можете создать достаточно унифицированную настройку, работаете ли вы в консоли или в X.


Прошу прощения, я новый ученик Linux. Я установил его в тексте Linux. нет консоли. все это работает в командной строке. спасибо,
runeveryday

2
Да, именно это я имел в виду, когда говорил за пределами X - в консолях TTY (TTY 1-7).
Джейсонвриан

jasonwryan, я запускаю команду vim / etc / DIR_COLORS, где DIR - 01; 34 КАК ИЗМЕНИТЬ ТИЛИРОВОЙ цвет. спасибо,
runeveryday

2
Термин цвета здесь: tldp.org/HOWTO/Bash-Prompt-HOWTO/x329.html Зеленый - это 00;32светло-жирный зеленый 1;32. Единственный способ получить чирок - это использовать метод, который я описал выше, чтобы определить один из этих 16 цветов. как шестнадцатеричный эквивалент чирка.
Джейсонвриан

извините, если это вопрос для начинающих, но изменится ли ваш ответ для системы Unix в OS X?
Чарли Паркер

9

Файл вы хотите /etc/DIR_COLORS. У меня была та же проблема, что и у вас, и я изменил каталоги на чирный цвет. Работает намного приятнее.

cp /etc/DIR_COLORS /home/yourusername/.dir_colors

Отредактируйте /home/yourusername/.dir_colors, вы увидите эту строку:

DIR 01;34    #directory

Измените это на это:

DIR 01;36    #directory

Что делает каталог цветов чирок.


когда я запускаю команду / etc / DIR_COLORS, разрешение на вывод запрещается. я пользователь root, почему? как поменять цвет на чирок. спасибо
Runeveryday

3
@run Это не команда, это файл конфигурации; откройте его в текстовом редакторе
Майкл Мрозек

DIR - 01; 34 КАК ИЗМЕНИТЬ ЧЕРНЫЙ ЦВЕТ. спасибо,
runeveryday

@MaxMackie Это, кажется, не работает для меня (скопировал в ~/.dir_colors) и изменил все на 00. Обнаружил, что я должен открыть новый терминал. Как это принудительно / привязано к текущему терминалу?
Бернхард
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.