Não é necessário usar tee
: você pode atribuir sua mensagem a uma variável e printf
que usar cores, e então anexar a mensagem ao arquivo de log :
msg=$(printf "%-70s %s" "df -h response : " " ......... NORMAL (Completed in >
printf "%s%s%s\n" "${red}" "$msg" "${normal}"
printf "%s\n" "$msg" >>$log
em vez de
printf "%-70s %s\n" "${red}df -h response : " " ......... taking more than 30 Seconds to complete, exiting script${normal}" | tee -a $log
O problema com tee
é que ele só pode gravar na saída padrão. Você poderia fazer algo com seu script para redirecionar a saída padrão separadamente, mas é complicado:
( printf "%-70s %s\n" "df -h response : " " ......... taking more than 30 Seconds to complete, exiting script" | tee -a $log ) | sed -e "s/^/${red}/" -e "s/$/${normal}/"