LINUX.ORG.RU
решено ФорумAdmin

удаление цветов из вывода

 


1

4

есть софтина которая выводит информацию в консоль в раскрашенном виде, если перенаправить её в файл получаем кучу [1;39;49m, [0m, [0;32; и тд.

есть какая нибудь команда которую можно добавить в конвейер и она очистит вывод от цветов? интересуют именно готовые решения, скриптик и сам написать могу.

★★★★★

Последнее исправление: TDrive (всего исправлений: 1)

Ух, ёпт. Серьёзно? Это через пайп так гадит или через галочку? А эмулятор терминала тут не замешан?

deep-purple ★★★★★
()
Ответ на: комментарий от deep-purple

пайп, а че за галочка?

Вообще это нормальное поведение, например ls -l --color=always > test даст тот же результат, просто стандартные команды как то определяют что у них в качестве потока вывода.

TDrive ★★★★★
() автор топика

интересуют именно готовые решения

Как и со всякой задачей, которую можно решить «скриптиком» и самому, «готовых решений» здесь целая тележка. Ну, например Term::ANSIColor(3perl).

$ ls --color=always | perl -MTerm::ANSIColor=colorstrip -ne 'print colorstrip $_'
Zmicier ★★★★★
()
Ответ на: комментарий от TDrive

Вообще это нормальное поведение

И нет, это не нормальное поведение, пишите отчет об ошибке, если есть куда.

Zmicier ★★★★★
()

Есть ansifilter. Там далеко не только это, но по умолчанию фильтрует.

xaizek ★★★★★
()
Ответ на: комментарий от TDrive

Так нет, потому что есть ls --color=auto

anonymous
()
Ответ на: комментарий от TDrive

И нет, это не нормальное поведение, пишите отчет об ошибке, если есть куда.

Как нет, если ls -l --color=always > test дает такой же результат?

Тогда просто укажите вашей секретной программе --color=no, зачем вам еще какая-то костыль-утилита для подрезки цветов?

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 2)
Ответ на: комментарий от TDrive

На колу мочало — начинай с начала.

Ваша секретная программка портит свой вывод цветами даже тогда, когда он идет не на консоль — вот краткая формулировка бага — о каком «отсутствии фичи» вы говорите?

Zmicier ★★★★★
()
Ответ на: комментарий от TDrive

Говорят же, проблема с терминалом. Рой туда. Управляющие последовательности не должны так себя вести.

IPR ★★★★★
()
Ответ на: комментарий от Zmicier

Т.е. управляющие последовательности, раскрашивающие вывод ls, при нормальном состоянии терминала, пишутся в файл?

IPR ★★★★★
()
Ответ на: комментарий от IPR

Т. е. управляющие последовательности, раскрашивающие вывод ls, при нормальном состоянии терминала, пишутся в файл?

Конечно, сами-то проверить не хотите? $ ls --color=yes | less При чем здесь вообще терминал?

Zmicier ★★★★★
()
Ответ на: комментарий от IPR

Всё хорошо

Не могу за вас не порадоваться, но все-таки «хорошо» — это как?

при color -G

Мне это, увы, ничего не говорит.

Что вы в итоге сказать-то хотите?

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от IPR

Тред переписи клоунов регистрантов какой-то, включая тс.

anonymous
()

Да отстаньте от ТСа с вашими приколами! У него конкретная проблема, что вы развели.

ТС, а ты попробуй tr -d '[:cntrl:]'

Upd. Я сам попробовал, что-то не взлетело.

Вот тогда: http://www.commandlinefu.com/commands/view/3584/remove-color-codes-special-ch...

cdshines ★★★★★
()
Последнее исправление: cdshines (всего исправлений: 1)
Ответ на: комментарий от cdshines

У него конкретная проблема, что вы развели.

Товарищ, если вы не заметили, то вполне конкретное решение было предложено давным давно. И судя по тому, что ОП пометил нить решенной, оно его вполне устроило.

а ты попробуй tr -d '[:cntrl:]'

См. tr(1)

http://www.commandlinefu.com/commands/view/3584/remove-color-codes-special-ch...

А на эту подборку костылей ссылались четырьмя письмами выше.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от Zmicier

Вот именно что не заметил, потому что вы засрали тред. А ты и продолжаешь.

cdshines ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.