Поиск по сайту:
Все уже описано. К счастью, не обо всем еще подумано (С. Лец).

Цвета в выходных данных команды ls: что они означают?

FavoriteLoadingДобавить в избранное
07.08.2023
Цвета в выходных данных команды ls: что они означают?

Мы уверены, что вы, должно быть, использовали команду ls для отображения содержимого каталога. В Ubuntu и многих других дистрибутивах вы увидите вывод команды ls в разных цветах.

Если вы этого не видите, вы можете получить цветной вывод следующим образом:

ls --color=auto

 

Но задумывались ли вы когда-нибудь, что означают эти цвета в выводе команды ls?

 

Значение цветов, используемых в команде ls в Ubuntu

Нет установленного стандарта для цветов в выводе команды ls. Разные терминалы и дистрибутивы используют различную цветовую кодировку, и вы также можете изменить ее по своему вкусу. Другими словами, не полагайтесь на цвета.

В этом разделе мы используем терминал Ubuntu по умолчанию и его цветовой профиль.

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

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

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

Выглядит запутанно? Позвольте мне расшифровать каждый из них для вас!

ЦветОписание
Жирный синийКаталоги.
НеокрашенныйФайл или многожильная ссылка.
Жирный голубойСимволическая ссылка, указывающая на файл.
Жирный зеленыйИсполняемый файл (скрипты с .sh расширением).
Выделенный жирным краснымАрхивный файл (в основном архивный файл или zip-файл).
ПурпурныйУказывает на изображения и видеофайлы.
ГолубойАудиофайлы.
Желтый с черным bgФайл канала (известный как FIFO).
Выделите красный цвет черным bgНеработающая символическая ссылка.
Неокрашенный (белый) с красным bgУказывает на файл set-user-ID.
Черный с желтым bgУказывает на файл set-group-ID.
Белый с синим bgПоказывает привязанный каталог.
Синий с зеленым bgУказывает на другой каталог, доступный для записи
Черный с зеленым bgКогда каталог имеет характеристики как липких, так и доступных для записи других каталогов.
Опять же, приведенные выше данные о цвете основаны на настройках терминала по умолчанию, и если вы измените палитру цветов, вы не получите аналогичных результатов.

Но что, если ваш терминал не отображает никаких цветов? Что ж, для этого есть причина и решение.

Читать  Исключение терминов в Grep

 

Что, если команда ls не отображает цветной вывод?

Вот в чем дело. Команда ls по умолчанию не должна отображать цвета в выходных данных. Она будет отображать цвета, если вы используете флаг –color=auto.

ls --color=auto

 

Тогда почему команда ls добавляет цвета по умолчанию в Ubuntu и некоторых других дистрибутивах? Это потому, что в вашем дистрибутиве установлен псевдоним для команды ls, позволяющий использовать флаг –color=auto при выполнении команды ls:

alias

 

Таким образом, если команда ls не отображает цветной вывод, псевдоним по умолчанию не задан.

Теперь вы можете использовать флаг –color=auto всякий раз, когда используете команду ls.

Но это не очень удобно. Вместо этого вы должны создать псевдоним и добавить его в свой bashrc, чтобы команда ls отображала цвета по умолчанию.

 

Создайте постоянный псевдоним для ls для отображения цветов

Чтобы создать постоянный псевдоним, сначала откройте файл .bashrc, используя следующую команду:

nano ~/.bashrc

 

Перейдите к концу файла используя Alt + / и вставьте следующую строку в терминал:

alias ls='ls --color=auto'

 

После завершения сохраните изменения и выйдите из текстового редактора nano.

Чтобы изменения, которые вы только что внесли, вступили в силу, используйте исходный файл .bashrc:

source ~/.bashrc

 

Вот и все! С этого момента вы можете использовать цветной вывод.

 

Откуда команда ls получает цвет?

Теперь начинается интересная часть. Где определены цвета для команды ls? Ответ – LS_COLORS.

Читать  Отображать только скрытые файлы в Linux

ДА. Это специальная переменная среды с именем LS_COLORS, которая определяет цвета, используемые командой ls.

Это хорошо, но кто определяет эту переменную? Что, если бы вы захотели внести некоторые изменения? Мы также ответим на эти вопросы.

На самом деле, у вас есть специальная команда dircolors для настройки цвета для команды ls.

Разные оболочки имеют разные форматы цветового профиля. Вот почему вы должны указывать оболочку при использовании этой команды.

Как вы можете видеть, она определяет переменную среды LS_COLORS и экспортирует ее, чтобы переменная была доступна для подоболочки.

Теперь, если вы хотите его использовать, вы можете либо скопировать и вставить его в свой файл bashrc, либо перенаправить вывод следующим образом:

dircolors -b >> .bashrc

 

И отправьте исходный файл, чтобы эффекты были видны сразу. Вам нужно сделать это только один раз.

 

Понимание цветового профиля

LS_COLORS содержит данные в паре ключ-значение, разделенные двоеточием (:). Если значение состоит более чем из одной части, они разделяются точкой с запятой (;).

Ключ обычно предопределен. Часть значений представляет цвета.

Итак, если там написано ln=01;36, это означает, что для символьных ссылок шрифт выделен жирным шрифтом, а цвет (36) – голубым.

0 – для обычного, 1 – для жирного, 4 – для подчеркнутого. 31 – для красного, 32 – для зеленого и т.д. Цветовые коды следуют за управляющим кодом ANSI.

Другой пример. or=40;31;01 означает, что ссылка на несуществующий файл (ключ или) использует черный фон (цветовой код 40), красный цвет и жирный шрифт (код 01).

Читать  Как анализировать и очищать HTML с помощью Pyquery

Мы думаем, порядок не имеет значения, потому что коды не перекрываются. 31 – это код для красного цвета переднего плана, а 41 – это цвет для красного цвета фона. Итак, если используется 41, вы знаете, что это для цвета фона.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
Поделиться в соц. сетях:



Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

7 + 16 =

**ссылки nofollow

Это может быть вам интересно

Рекомендуемое
Intel усердно работала над тонкой настройкой своих графических процессоров Arc…

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: