Трубить меньше, но сохранить выделение


32

Можно ли передать вывод (например dmesg) в команду, подобную less(или эквивалентную), и сохранить выделение текста, используемое исходной командой?

пример: слева dmesg | lessсправаdmesg

<code> dmesg |  меньше </ code> против <code> dmesg </ code>

Ответы:


37

Используйте --humanпараметр для просмотра цветного dmesgвывода в less-подобной среде.

dmesg --human --color=always

В качестве альтернативы используйте следующую команду для достижения аналогичных результатов.

dmesg --color=always | less -R

Многие другие утилиты, которые выдают цветной вывод ( ls, grepи т. Д.), Имеют аналогичную --color=alwaysопцию.


1
На самом деле --humanделает больше, чем просто сохраняет цвет и канал less: он также помечает даты как, например, [May23 00:58]и последующие небольшие смещения [ +6.046768]вместо того, что всегда будет [121187.191521]с less.
Руслан

Есть ли способ сделать автоматическое сохранение цветового форматирования в любое время, когда я передаю какую-либо команду, основанную на txt (не только dmesg)?
mikemtnbikes

@mikemtnbikes Вы должны использовать, --color=alwaysесли это предусмотрено программой. Программа знает, выводит ли она в трубу, и поэтому может решить выводить цвет или нет.
Стивен
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.