Linux 颜色设置以及进度条的实现 详细介绍

Linux 颜色设置以及进度条的实现


格式如下:

\033[字体颜色;字背景颜色m字符串\033[0m
或者
\e[字体颜色;字背景颜色m字符串\e[0m

后面进度条中例子:

printf "\e[31m[%-100s]\e[1;0m\e[32m[%c]\e[1;0m\e[35m[%d%%]\e[1;0m\r" $str ${label[index]} $i

\e[31m   //红色字体,这里没有设置背景色,若要设 \e[31;40m 黑底红字 m放在最后作为结束 多个颜色之间用分号 ; 隔开
[%-100s] //100个字符串左对齐 对应后面变量 $str
\e[1;0m // 1表示颜色高亮 (后面有) ,0表示关闭前面设置的颜色属性,不然后面一直保持此设置
[%d%%]  //后面两个百分号是为了打印出一个百分号
\r   //光标回到左边,确保进度条从左开始并回到左边

其他不再解释

颜色		字体颜色		背景颜色
黑色		30			40
红色		31			41
绿色 	32			42
黄色		33			43
蓝色		34			44
紫红色	35			45
青蓝色	36			46
白色		37			47

输出特效格式控制:

\033[30m   --   \033[37m   设置前景色即字体颜色
\033[40m   --   \033[47m   设置背景色

\033[0m  关闭所有属性 
\033[1m   设置高亮度 
\033[4m   下划线 
\033[5m   闪烁 
\033[7m   反显 
\033[8m   消隐 


光标位置等的格式控制:

\033[nA  光标上移n行 
\03[nB   光标下移n行 
\033[nC   光标右移n行 
\033[nD   光标左移n行 
\033[y;xH设置光标位置 
\033[2J   清屏 
\033[K   清除从光标到行尾的内容 
\033[s   保存光标位置 
\033[u   恢复光标位置 
\033[?25l   隐藏光标 
\33[?25h   显示光标
进度条
#! /usr/bin/env bash
  
i=0
str=""
label=('|' '/' '-' '\\')
index=0

while [ $i -le 100 ]
do
        let index=i%4
        printf "\e[31m[%-100s]\e[1;0m\e[32m[%c]\e[1;0m\e[35m[%d%%]\e[1;0m\r" $str ${label[index]} $i
        let i++
        str+="#"
        sleep 0.2
done
echo

效果

在这里插入图片描述
在这里插入图片描述

如果还明白的话,还请点赞支持一下!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值