Кольори в баші після прокладки менше?


106

Коли у мене визначені кольори кольорів, життя наповнене ... кольором.

Коли я труба lsчерез lessпрокручувати я втрачаю кольору.

Будь-які пропозиції?

Відповіді:


105

Швидше за все, вам lsпришвидшене ls --color=auto, що говорить, lsщоб використовувати кольори лише тоді, коли його вихідний показник складає tty. Якщо ви це зробите ls --color(що морально еквівалентно ls --color=always), це змусить вмикати кольори.

Ви також можете змінити свій псевдонім, щоб це зробити, але я б не дуже називав це гарною ідеєю. Краще зробити інший псевдонім з --color.

lessпотреби -Rтеж.


5
Чому б ви не назвали це гарною ідеєю для псевдоніма ls ls --colorабо ls --color=always, з цього приводу?
j08lue

10
@ j08lue, якщо ви передаєте команду, яка не обробляє колір, ви отримаєте кілька непотрібних символів, які можуть зіпсувати команду. Наприклад, я це ls --color=always | lessі отримав: ESC[01;32mexecute_once.shESC[0m(Я знаю, що це старе, і ви, мабуть, байдуже, але для майбутніх відвідувачів це може бути корисно)
Райан Амос

55

Спробуйте менше з таким варіантом -R:

command | less -R

Це працює для мене в одному вкладиші, як це:

ls -la | grep --color=always bash | less -r

І ось так:

ls --color | less -R

Але вам доведеться трохи налаштувати первинний вихід (вихід у цьому випадку) за допомогою параметра --color.


Дякую, це також працює для ак-греп. ack-grep my_string --кольоровий | менше -R
потік запалення

1
--кольору не визнано: ls: незаконний варіант - - Запуск bash на osx.
Скотт Біггс

1
@Scott Biggs: в OSX немає --color; спробуйте ls -G

@ Lu-Chi, Навіть при -Gцьому кольори відсутні
Iulian Onofrei

1
Цей -Rваріант короткий --RAW-CONTROL-CHARS.
Rory O'Kane
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.