Einen Haken muss man dabei allerdings beachten:
das was da durch die Pipe flutscht, ist dann nicht mehr nur der reine Text, sondern ist durchsetzt mit Steuersequenzen:
track@lucid:~$ ls -l --color=always ./-test/ | grep ^d
drwxr-xr-x 3 track track 4096 2011-12-19 18:33 or'd"ner
track@lucid:~$ ls -l --color=always ./-test/ | grep ^d --color=always | hd
00000000 1b 5b 30 31 3b 33 31 6d 1b 5b 4b 64 1b 5b 6d 1b |.[01;31m.[Kd.[m.|
00000010 5b 4b 72 77 78 72 2d 78 72 2d 78 20 32 20 74 72 |[Krwxr-xr-x 2 tr|
00000020 61 63 6b 20 74 72 61 63 6b 20 34 30 39 36 20 32 |ack track 4096 2|
00000030 30 31 31 2d 31 32 2d 31 39 20 31 38 3a 33 33 20 |011-12-19 18:33 |
00000040 1b 5b 30 6d 1b 5b 30 31 3b 33 34 6d 6f 72 27 64 |.[0m.[01;34mor'd|
00000050 22 6e 65 72 1b 5b 30 6d 0a |"ner.[0m.|
Sollte also so ein Farbcode innerhalb eines Suchausdrucks liegen, müsstest Du ihn in dem Suchausdruck mit berücksichtigen.
LG,
track