Tôi có một lệnh tạo đầu ra có màu và tôi muốn chuyển nó thành một tệp có mã màu được loại bỏ. Có một lệnh hoạt động như cat
ngoại trừ việc nó tước mã màu? Tôi dự định làm một cái gì đó như thế này:
$ command-that-produces-colored-output | stripcolorcodes > outfile
cat
- kiểm tra nhanh Tôi chạy grep --color=auto myusername /etc/passwd
cho tôi tên người dùng màu đỏ với văn bản màu trắng khác. grep --color=auto myusername /etc/passwd | cat
cung cấp cho tôi văn bản màu trắng đơn giản
grep --color=auto
tránh tạo ra đầu ra màu khi đầu ra tiêu chuẩn không phải là một thiết bị đầu cuối. Tôi đang nói về một lệnh xuất vô điều kiện mã màu. (Như alex chỉ ra ở trên, hành vi như vậy được cho là một lỗi, nhưng đôi khi chúng ta cần phải làm việc với các phần mềm không hoàn hảo mà chúng ta không thể dễ dàng sửa chữa chính mình, và đó là những gì câu hỏi này là về.)
isatty(stdin)
trước khi thực hiện. Tâm trí để chia sẻ chương trình đó là gì?