shell脚本定义输出字符颜色

#-------------------定义输入颜色---------------------#
  RED='\033[1;31m'
  GREEN='\033[1;32m'
  YELLOW='\033[1;33m'
  BLUE='\033[1;34m'
  NORMAL='\033[0m'
  RedBG='\033[1;41;37m'
  GreenBG='\033[1;42;37m'
  YellowBG='\033[1;43;37m'

 

  Screen=$(stty -F /dev/console size|awk '{print $2}')
#如果算出来的值为空,就默认赋值为80.
  Columns=${Screen:-80}
#减12是指减掉"[ $RED File $NORMAL ]"所占的字符.
  SPACOL=$[$Columns-12]

GreenChar() {
  String=$1
#计算出真正的空白数,$Columns-12后的结果再减$1的字符数.
  RTSPA=$[${SPACOL}-${#String}]
  echo -en "$GREEN${String}$NORMAL"
  for I in `seq 1 $RTSPA`;do #如果I在1到68,则输出------
#出输入空白

#seq 1 $RTSPA的输出结果

#

    echo -n "-" #echo -n是不输出换行符
  done
  echo -e "[$GREEN OK $NORMAL]" # 输出结果[ OK ],-e允许反斜杠\的转义
}

RedChar() {
  String=$1
  RTSPA=$[${SPACOL}-${#String}]
  echo -en "$RED${String}$NORMAL"
  for I in `seq 1 $RTSPA`;do
    echo -n "-"
  done
  echo -e "[$RED Failed $NORMAL]" #同理,一行的最后字符是[ Failed ]
}

YellowChar() {
  String=$1
  RTSPA=$[${SPACOL}-${#String}]
  echo -en "$YELLOW${String}$NORMAL"
  for I in `seq 1 $RTSPA`;do
    echo -n "-"
  done
  echo -e "[$YELLOW Warning $NORMAL]" #同理,一行的最后字符是[ Warning ]
}

GreenBGChar() {

  echo ""
  echo -e "[[ $GreenBG $1 $NORMAL ]]"
  echo ""
}

RedBGChar() {

  echo ""
  echo -e "[[ $RedBG $1 $NORMAL ]]"
  echo ""
}

YellowBGChar() {

  echo ""
  echo -e "[[ $YellowBG $1 $NORMAL "
  echo ""
}

BG的输出结果

最终的字符效果

 

转载于:https://www.cnblogs.com/qfdxxdr/p/8550634.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值