0

There is a simple bash script:

#!/bin/bash
exec 2> >(while read; do echo >&2 -ne '\e[1;36m'; echo >&2 -n "$REPLY"; echo >&2 -e '\e[m'; done)
echo line1
echo errline1 >&2
echo line2
echo errline2 >&2
echo line3
echo err line 3 >&2

The second line is intended to colorify stderr.

The result is:

line1
line2
line3
errline1
errline2
err line 3

expected:

line1
errline1
line2
errline2
line3
err line 3

How to synchronize colorified stderr from subshell with main shell's stdout?

kyb
  • 7,233
  • 5
  • 52
  • 105

0 Answers0