У мене є команда, яка виробляє вихід у кольорі, і я хотів би передати його у файл із викресленими кольоровими кодами. Чи існує така команда, яка працює cat
за винятком того, що знімає кольорові коди? Я планую зробити щось подібне:
$ command-that-produces-colored-output | stripcolorcodes > outfile
cat
- швидкий тест, який я пробіг, grep --color=auto myusername /etc/passwd
дає мені своє ім’я користувача червоного кольору з білим текстом elsewhree. grep --color=auto myusername /etc/passwd | cat
дає мені звичайний білий текст
grep --color=auto
уникає отримання кольорового виводу, коли стандартний вихід не є терміналом. Я говорю про команду, яка беззастережно виводить кольорові коди. (Як Алекс зазначає вище, така поведінка, мабуть, є помилкою, але іноді нам потрібно працювати з недосконалим програмним забезпеченням, яке ми не можемо легко виправити, і ось в чому це питання.)
isatty(stdin)
перш ніж це робити. Ви можете поділитися, що це за програма?