Có cách nào để giữ colorization văn bản qua đường ống |
để head
, tail
, less
, vv?
Có cách nào để giữ colorization văn bản qua đường ống |
để head
, tail
, less
, vv?
Câu trả lời:
Tôi đoán bạn đang đường ống từ ls
và 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 glark
thay vì grep
nó sẽ cố gắng hiển thị với màu sắc.
Nếu bạn sử dụng less
với -R
nó sẽ cố gắng hiển thị với màu sắc.
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.
git diff
đầu ra làm đầu vào vì nó sẽ luôn xuất ra các mã thoát ANSI.
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
Nó phụ thuộc vào chương trình tạo ra đầu ra trong đường ống.
head
, tail
v.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
)
color=auto
chế độ (để làm cho chương trình nghĩ rằng đầu ra đi đến bàn điều khiển thay vì đường ống)?
head
, tail
v.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.).
head
,,tail
v.v.