LINUX.ORG.RU

Re: Люди, чей-то вопрос остался без ответа

Казалось бы, при чём тут zsh?

Разве что он будет перенаправлять поток ошибок на себя и потом разукрагивать его. Ну так это можно и вручную, если очень хочется :)

prog 2|beautifier :)

Teak ★★★★★ ()

Re: Люди, чей-то вопрос остался без ответа

>Казалось бы, при чём тут zsh? Разве что он будет перенаправлять поток ошибок на себя и потом разукрагивать его.

Ну, и в каком shell это возможно?

mr ★★ ()

Re: Люди, чей-то вопрос остался без ответа

Неужто здесь нет людей, разбирающихся в shell-программировании?

mr ★★ ()

Re: Люди, чей-то вопрос остался без ответа

Посмотри на colorgcc. Это перловый скрипт, который обрабатывает вывод компилятора и подкрашивает ошибки и предупреждения.

kaktyc ★★★★ ()

Re: Люди, чей-то вопрос остался без ответа

>http://www.linux.org.ru/jump-message.jsp?msgid=1393096

А можно ли вообще это сделать? Даже если можно сохранить текущие цветовые настройки, то как быть с атомарностью вывода. Что бы все работало нужно чтобы операция (сохранить настройки, вывести строку, вернуть настройки) была атомарной.

ival ★★ ()

Re: Люди, чей-то вопрос остался без ответа

А если так?

$ blabla 2| sed -e 's/^\(.*\)$/\o33[1;31m\1\o33[0m/'

ero-sennin ★★ ()

Re: Люди, чей-то вопрос остался без ответа

что-то придумал!

$cat ~/bin/colorer
#!/bin/bash
while true; do
read i ;
echo -e "\033[31m$i\033[0m"
done;

затем
$ mkfifo /tmp/stderr
$ (cat /tmp/stderr | colorer) &
$ че-нть 2>/tmp/stderr

W98 ()

Re: Люди, чей-то вопрос остался без ответа

Мысль интересная, почти работает, но только этот colorer почему-то после конца вывода продолжает в бесконечном цикле читать и выводить какие-то непонятные пустые строки, непонятно почему это происходит.

Но всё же хочется знать, можно ли это сделать без фифо. Конвейер | читает из stdout, а есть ли в shell конвейер, который читает из stderr?

mr ★★ ()

Re: Люди, чей-то вопрос остался без ответа

Какая-то ерунда с самим фифо получается. Делаю "colorer < ~/tmp/stderr", если сделать "ps adsadas 2>~/tmp/stderr", то результат непредсказуемый получается--то работает, то не работает :(

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