Як розфарбувати вихід 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://phrakpted.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

Jasonwryan, я запускаю команду vim / etc / DIR_COLORS, DIR - це 01; 34 ЯК ЗМІНИТИ ЦВЕТОК кольору. дякую,
runeveryday

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

Вибачте, якщо це питання для початківців, але чи змінюється ваша відповідь для системи 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, у дозволі на вихід заборонено. Я кореневий користувач, чому? як змінити колір на чирку. дякую
runeveryday

3
@run Це не команда, це файл конфігурації; відкрити його в текстовому редакторі
Michael Mrozek

DIR - це 01; 34 ЯК ЗМІНИТИ ЦВЕТНИЙ колір. дякую,
runeveryday

@MaxMackie Це, здається, не працює для мене (скопійовано в ~/.dir_colors) і все змінило на 00. Виявив, що мені потрібно відкрити новий термінал. Як це застосовується / приєднується до поточного терміналу?
Бернхард
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.