Câu trả lời:
Nhiều khả năng lslà bí danh của bạn ls --color=auto, điều này cho biết lschỉ sử dụng màu sắc khi đầu ra của nó là một tty. Nếu bạn làm ls --color(tương đương về mặt đạo đức ls --color=always), điều đó sẽ buộc nó phải bật màu.
Bạn cũng có thể thay đổi bí danh của mình để làm điều đó, nhưng tôi thực sự sẽ không gọi đó là một ý tưởng hay. Tốt hơn để làm một bí danh khác với --color.
lessnhu cầu -R, quá.
ls --color=always | lessvà nhận: ESC[01;32mexecute_once.shESC[0m(Tôi biết điều này đã cũ và bạn có thể không quan tâm, nhưng đối với khách truy cập trong tương lai, điều này có thể hữu ích)
Hãy thử ít hơn với tùy chọn -R như thế này:
command | less -R
Điều này làm việc cho tôi trong một lót như thế này:
ls -la | grep --color=always bash | less -r
Và cũng như thế này:
ls --color | less -R
Nhưng bạn phải điều chỉnh đầu ra chính (đầu ra của ls trong trường hợp này) một chút với tham số --color.
-G, màu sắc bị thiếu
-Rtùy chọn là chữ viết tắt --RAW-CONTROL-CHARS.
ls --colorhoặcls --color=always, cho vấn đề đó?