bash - коды экранирования цвета

У меня есть сценарий, который использует escape-коды для выделения текстовых совпадений в его выводе. Все в порядке, кроме случаев, когда вывод передается на less , который выводит escape-коды

, например,

$ echo -e "\033[31m -- Hello World! -- \033[m"
 -- Hello World! --

, подключенный к less :

$ echo -e "\033[31m -- Hello World! -- \033[m" | less
ESC[31m -- Hello World! -- ESC[m

Мне было интересно, как другие инструменты, такие как ls , grep , и т. д., могут выводиться в цвете, но при передаче по конвейеру на less ?

6
задан armandino 22 November 2011 в 00:00
поделиться