Có cách nào để giữ cho văn bản được truyền vào đầu, đuôi, ít hơn, vv để được tô màu?


26

Có cách nào để giữ colorization văn bản qua đường ống |để head, tail, less, vv?


Bất kỳ chương trình đầu ra cụ thể? Nó phụ thuộc vào chương trình gửi dữ liệu qua đường ống. head,, tailv.v.
KurzingMetal

Câu trả lời:


15

Tôi đoán bạn đang đường ống từ lsvà muốn bảo toàn mã màu thiết bị đầu cuối. Bạn có thể nói ls --color=always(thay vì mặc định --color=auto), sẽ bảo toàn mã, nhưng điều đó sẽ không đảm bảo rằng điều bạn đang hiểu để hiểu cách hiểu chúng.

Nếu bạn sử dụng glarkthay vì grepnó sẽ cố gắng hiển thị với màu sắc.

Nếu bạn sử dụng lessvới -Rnó sẽ cố gắng hiển thị với màu sắc.


6
Tôi đang đi từ git. Tôi thấy rằng nó có cấu hình tương tự (ví dụ. git config color.diff always) Giữ màu.
Timofey Gorshkov

1
@Errandir vấn đề với cấu hình đó là nó sẽ phá vỡ bất kỳ tập lệnh hoặc lệnh nào sử dụng git diffđầu ra làm đầu vào vì nó sẽ luôn xuất ra các mã thoát ANSI.
KurzingMetal

@Errandir, cảm ơn! Tôi không có bất kỳ tập lệnh nào dựa trên đầu ra sạch từ git diff vì vậy điều này hiệu quả với tôi !! Cảm ơn bạn !
Ashutosh Jindal

Tôi đã sử dụng điều này cho grep: grep "string" file.txt | headđể đảm bảo kết quả từ grep được tô màu, tôi chỉ đổi nó thànhgrep "string" file.txt --color=always | head
Emil Stenström

13

Nó phụ thuộc vào chương trình tạo ra đầu ra trong đường ống.

head, tailv.v. không phải là những người loại bỏ màu sắc, đó là chương trình tạo dữ liệu thường kiểm tra xem đầu ra có đi đến bàn điều khiển (màu), tệp hoặc đường ống (không màu)

Tôi đã tìm thấy một câu hỏi và trả lời SU khác cho thấy cách nói dối với các chương trình đường ống để xuất ra như thể chúng đang gửi đầu ra đến một bàn điều khiển (mô phỏng một bàn điều khiển với unbuffer)


Có cách nào để giữ màu trong color=autochế độ (để làm cho chương trình nghĩ rằng đầu ra đi đến bàn điều khiển thay vì đường ống)?
Timofey Gorshkov

@KurenedMetal Làm thế nào để một chương trình, ví dụ head, tailv.v., phát hiện ra rằng nó đang được dẫn đến một chương trình khác (để nó có thể tạo dữ liệu mà không có màu, v.v.).
Jorge Bucaran

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.