Câu trả lời:
Nhiều khả năng ls
là bí danh của bạn ls --color=auto
, điều này cho biết ls
chỉ 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
.
less
nhu cầu -R
, quá.
ls --color=always | less
và 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
-R
tùy chọn là chữ viết tắt --RAW-CONTROL-CHARS
.
ls --color
hoặcls --color=always
, cho vấn đề đó?