Colorized maven output
!/bin/bash
Formatting constants
BOLD=
tput bold
UNDERLINEON=tput smul
UNDERLINEOFF=tput rmul
TEXTBLACK=tput setaf 0
TEXTRED=tput setaf 1
TEXTGREEN=tput setaf 2
TEXTYELLOW=tput setaf 3
TEXTBLUE=tput setaf 4
TEXTMAGENTA=tput setaf 5
TEXTCYAN=tput setaf 6
TEXTWHITE=tput setaf 7
BACKGROUNDBLACK=tput setab 0
BACKGROUNDRED=tput setab 1
BACKGROUNDGREEN=tput setab 2
BACKGROUNDYELLOW=tput setab 3
BACKGROUNDBLUE=tput setab 4
BACKGROUNDMAGENTA=tput setab 5
BACKGROUNDCYAN=tput setab 6
BACKGROUNDWHITE=tput setab 7
RESET_FORMATTING=tput sgr0
Wrapper function for Maven's mvn command.
mvn-color() { # Filter mvn output using sed mvn $@ | sed -e "s/([INFO] -.)/${TEXT_BLUE}${BOLD}1/g" -e "s/([INFO] [.)/${RESETFORMATTING}${BOLD}1${RESETFORMATTING}/g" -e "s/([INFO] BUILD SUCCESSFUL)/${BOLD}${TEXTGREEN}1${RESETFORMATTING}/g" -e "s/([WARNING].)/${BOLD}${TEXTYELLOW}1${RESETFORMATTING}/g" -e "s/([ERROR].)/${BOLD}${TEXTRED}1${RESETFORMATTING}/g" -e "s/Tests run: ([^,]), Failures: ([^,]), Errors: ([^,]), Skipped: ([^,])/${BOLD}${TEXTGREEN}Tests run: 1${RESETFORMATTING}, Failures: ${BOLD}${TEXTRED}2${RESETFORMATTING}, Errors: ${BOLD}${TEXTRED}3${RESETFORMATTING}, Skipped: ${BOLD}${TEXTYELLOW}4${RESETFORMATTING}/g"
# Make sure formatting is reset echo -ne ${RESET_FORMATTING} }
mvn-color $@