Alex Rivera | Logout

bash command preserve color when piping

Asked 2011-10-03T22:28:08.610
46

Possible Duplicate:
Can colorized output be captured via shell redirect?

setup

In this case specifically I'm trying to preserve the colors in git status -s when piping it to another command.

Some git commands, diff for instance, and other commands like grep have an option --color=always but git status does not.

question

Is there a way to pipe or capture the output of a command and make it think it is outputting to the xterm shell so it doesn't automatically disable colors?

Edit
Report

1 Answer

7

Most commands that do print out those color codes explicitly check if stdout/stderr is a tty (using the isatty function).

If you want to preserve the color codes, you can run it within a terminal emulator like screen or the direct logger script, saving the output to a file.

answered 2011-10-03T22:31:06.323

Your Answer