如何从bash脚本获取彩色输出?
当我从gnome-terminal中执行grep
,我得到彩色输出 – 容易引人注意的匹配,行号(-n)与不同的颜色等
但是当我通过bash脚本执行完全相同的grep
命令时,我得到了平面输出,没有着色
有没有办法通过使用bash脚本获得彩色输出?
当我在shell脚本中运行grep时,使用--color
选项对我--color
。
这是你想要的一个例子。
grep -n --color=auto "PATTERN" FILE
这是一个小脚本,可以帮助您掌握tput如何与bash一起使用
#!/bin/bash #@auth kesavan.muthuvel #@desc - bash with colors :) B=`tput bold` #BOLD D=`tput dim` #DIM U=`tput sgr 0 1` #UNDERLINE U2=`tput smul` #UNDERLINE2 NOU=`tput rmul` #NO UNDERLINE H=`tput smso` #HIGHLIGHT X=`tput sgr0` #RESET C='tput setaf ' #COLOR for i in 0 1 2 3 4 5 6 7 ; do c=`$C$i` && echo $c${B}I${U}always$NOU $D love \ ${U2}colors$NOU \& $c${H}GNU/Linux$X done;
这将使用BOLD ,UNDERLINE,Highlighting和颜色等格式打印以下输出。
您是否尝试将这些别名添加到~/.bashrc
?
alias grep='grep --color=auto' alias fgrep='fgrep --color=auto' alias egrep='egrep --color=auto'