Linux 脚本不显示ascii,bash shell脚本使用ASCII颜色显示文本信息示例

bash shell脚本使用ASCII颜色显示文本信息示例

发布时间:2020-05-23 16:01:26

来源:亿速云

阅读:146

作者:鸽子

在bash shell脚本中我们可以使用ASCII颜色来显示文本信息。

格式:\033\[31m hello \033[0m

##m:

左侧#:这个#可以是3或者4,作用不一样。

3:前景色

4:背景色

右侧#:颜色种类

1,2,3,4,5,6,7

前景和背景同时使用:\033[##;##m hello \033[0m

#m:

加粗、闪烁等功能。

多种控制符,可组合使用,彼此间使用分号隔开。

演示:

ee70bc0c8c79663ac390854b8012e622.png

演示背景色

42a4afda4c384fd7508b0f4eea5a0703.png

前景和背景同时使用

741f4f1ed743a3069f4d464378b39111.png

加粗、闪烁功能

a5beadb59782f6fa701fa5b3484986e0.png

c4c077ae72174a63ba7c3a9f436d81f8.png

实战演练:

给自己的Linux的PS1变量添加上颜色,比如:

2b7ccef20bb6ed0e2a0903cee19122cf.png

1、首先是我们要给自己的PS1要显示的颜色部分添加值。export PS1='[\033[31m\u\033[0m@\033[32m\h\033[0m \033[35m\W\033[0m]\$'

这样子设置真的很不错,达到了我们的需求,但是他是有问题的,就是比如当你在输入很长的字符串之后,你会发现bash不能自动换行显示,而是覆盖同一行的开头的部分,慢慢的往后覆盖掉一开始输入的内容,这是很不乐观的,否则当我们输入过长的内容时,显示内容是个问题怎么行呢?

初步判断是加上了颜色代码才出现这样的问题,这可能是在PS1环境变量中,颜色代码不适合直接添加至PS1中,所以我们需要进行改正,就是每个颜色代码后都加上 \[ 和 \] 。

例如:export PS1='[\[\033[31m\]\u\[\033[0m\]@\[\033[32m\]\h\[\033[0m\] \[\033[35m\]\W\[\033[0m\]]\$'

可以看出有多少个颜色代码就要加上多少个  \[  和  \] 才行。这样子设置好之后,这个毛病就没有了,我们继续可以愉快的在终端输入长命令了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值