在shell下提到终端的颜色的时候不得不提到几个提示符变量:

PS1:默认提示符,也就是远程登上系统之后,打开终端,我们天天见到的那个熟悉的提示符;

[root@vps ~]$echo $PS1

[\u@\h \W]$

PS2:就是我们命令一行写不完在我们命令行下我们打上”\”,另起一行所显示的那个;

[root@vps ~]$echo “hello” \

> “world”

hello world

[root@vps ~]$echo $PS1

[\u@\h \W]$

PS3:就是我们在shell脚本中要用select的时候显示的那个;

复制代码 代码如下:

#!/bin/bash

#PS3=”Select a script language (1-4): ”

select i in perl php python shell exit

do

case $i in

perl) echo “I like perl”;;

php) echo “php is good”;;

python) echo “xiangjun like python”;;

shell) echo “shell is my favourite”;;

exit) exit;;

esac

done

[root@vps tmp]$bash select.sh

1) perl

2) php

3) python

4) shell

5) exit

#? 1

I like perl

#?

默认是”#?”,呵呵,我们在脚本中改变一下

复制代码 代码如下:

#!/bin/bash

PS3=”Select a script language (1-4): “

select i in perl php python shell exit

do

case $i in

perl) echo “I like perl”;;

php) echo “php is good”;;

python) echo “xiangjun like python”;;

shell) echo “shell is my favourite”;;

exit) exit;;

esac

done

[root@vps tmp]$bash select.sh

1) perl

2) php

3) python

4) shell

5) exit

Select a script language (1-4): 3

xiangjun like python

Select a script language (1-4):

变了吧,哈哈。

PS4:我们调试shell脚本我们会bash -x myscripts.sh (或者在脚本中set -x)那个提示符;

复制代码 代码如下:

Select a script language (1-4): 5

[root@vps tmp]$bash -x select.sh

+ PS3='Select a script language (1-4): ‘

+ select i in perl php python shell exit

就是那个”+”了,我们重置下;

复制代码 代码如下:

[root@vps tmp]$export PS4=”>>”

[root@vps tmp]$bash -x select.sh

>>PS3='Select a script language (1-4): ‘

>>select i in perl php python shell exit

好了,回忆了一些基础知识之后,回到我们的话题上来:,我们以PS1为例说明一下:

那这个变量是在哪里设置的呢?在我们目前的redhat(当然包括centos了)是在/etc/bashrc文件中的:

[ "$PS1" = "\\s-\\v\\\$ " ] && PS1=”[\u@\h \W]\\$ ”

那这些\w \u 分别代表什么意思呢?分别如下:

\d :代表日期,格式为weekday month date,例如:”Mon Aug 1″

\H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux

\h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略

\t :显示时间为24小时格式,如:HH:MM:SS

\T :显示时间为12小时格式

\A :显示时间为24小时格式:HH:MM

\u :当前用户的账号名称

\v :BASH的版本信息

\w :完整的工作目录名称。家目录会以 ~代替

\W :利用basename取得工作目录名称,所以只会列出最后一个目录

\# :下达的第几个命令

\$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$

我们可以自由的发挥我们的默认提示符该是什么样子了,下面不要偏离我们的主题,我们的主题是颜色;

那么它的语法是什么呢?\e[ ——表示颜色的提示的起始位置

x;ym ——表示颜色的代码。颜色的代码在下面有说明(当然可以连着写多个,之间用";"分开,比如 1;5;35m)

\e[m ——表示代颜色的提示的结束位置

x的取值为:

0 OFF

1 高亮显示

4 underline

5 闪烁

7 反白显示

8 不可见

y的取值:

前景 背景 颜色

---------------------------------------

30 40 黑色

31 41 紅色

32 42 綠色

33 43 黃色

34 44 藍色

35 45 紫紅色

36 46 青藍色

37 47 白色

语法说明的都告诉你了,接下来就是你自由发挥了;

在脚本中如何使用,先来个例子再说;

好了,不过如果不想影响我们后面的颜色的话,我们最好在关闭的时候这么写:\e[0m

又闪烁又改变颜色的来一个:

echo -e '\e[35;5;1mFor Example:\e[0m'

35是颜色,5代表闪烁,1代表前景色,当中用“;”分开,顺序倒是无所谓啦;\e 可以写成 \033;

那么在perl中呢?这个我们是借助Term::ANSIColor这个模块的:

复制代码 代码如下:

#!/usr/bin/perl

use strict;

use Term::ANSIColor;

print color 'bold red';

print "Hello word\n";

print color 'reset';

这样写的话挺麻烦的,写个函数算了:

复制代码 代码如下:

#!/usr/bin/perl

use strict;

use Term::ANSIColor;

sub ColorMessage{

my($colors,$messages) = @_;

print color "bold $colors";

print "$messages \n";

print color 'reset';

}

ColorMessage('green','Hello word ');

本文标题: 在shell或者perl中改变字体或背景的颜色

本文地址: http://www.cppcns.com/os/linux/107330.html

python shell怎么改字体颜色_在shell或者perl中改变字体或背景的颜色相关推荐

  1. ppt流程图字体太小_【PPT】几种处理字体的小方法,让PPT中的字体更好看

    撰文 | 晓光 你好,这里是陈西设计之家. 我们经常设计制作PPT使用一些常规的字体,没有多余的设计,可能并不好看 那么今天,我们来讲解几种字体的处理方式,让PPT中的字体设计更加的好看. ▣ 01 ...

  2. 直接在PDF文件中改变字体的小技巧

    2019独角兽企业重金招聘Python工程师标准>>> PDF文件大家接触的还是蛮多的,今天要给大家介绍一下直接在PDF文件中改变字体的小技巧,想来应该有蛮多小伙伴需要的. 具体操作 ...

  3. android 字体大小属于什么类型,聊聊 Android 中的字体大小适配

    本篇文章已授权微信公众号 guolin_blog(郭霖)独家发布 前言 虽然去年写的一篇文章[一种非常好用的Android屏幕适配]就包含字体大小适配,但那篇文章讲的是根据不同屏幕尺寸来适配字体大小的 ...

  4. html中改变字体的大小

    <p>在 HTML 中改变字体大小的方法有很多,但是最常用的方法就是使用 CSS(Cascading Style Sheets,层叠样式表).</p> <p>你可以 ...

  5. 字体感觉小了 引入的vant_vue-cli3中vant字体库改为本地引入

    内网项目无法引用外部cdn资源,所以需要将vant的字体库改为本地引入 相关插件:"less-loader": "^7.0.0","vant" ...

  6. 字体在ppt中可以整体替换吗_如何批量替换PPT中的字体?

    如何批量替换PPT中的字体? 时间:2016-06-03来源: 网络作者: 未知点击: 次 PPT制作技巧:如何批量替换PPT中的字体? 问题:如何批量替换PPT中的字体? 解答:其实PPT有专门的功 ...

  7. centos7输入shell找不到命令_反弹shell原理与实现

    什么是反弹shell? 反弹shell(reverse shell),就是控制端监听在某TCP/UDP端口,被控端发起请求到该端口,并将其命令行的输入输出转到控制端.reverse shell与tel ...

  8. photoshop 字体小_使用Fontea Photoshop插件将Google字体添加到Photoshop

    如果您曾经想轻松访问设计软件中的整个Google字体库,那么Fontea是您唯一需要的插件. 这个免费的插件可在Windows和Mac上的Photoshop CC中使用,并且 计划在不久的将来为Ske ...

  9. html字体高度怎么调,当在CSS中设置字体大小时,字母的真实高度是多少?

    关于这个问题的一些背景 在金属上创建信件时,em指的是每个块的尺寸,该字母将被刻上,这个大小由资本M确定,因为它通常占用最多的空间. 现在有一天,字体开发者在计算机上创建自己的字体,而没有物理金属的限 ...

最新文章

  1. windows server 驱动精灵_大神教你如何在Win10中检查磁盘驱动器错误
  2. This graphics driver could not find compatible graphics hardware 解决
  3. 【小米校招笔试】在Excel中,列的名称是这样一个递增序列:seq={A、B、C、... Z、AA、AB、AC、... AZ、BA、BB、BC、... BZ、CA、... ZZ、AAA、AAB...
  4. 文献记录(part78)--Structure-Constrained Low-Rank Representation
  5. Eclipse中src/main/resources配置文件启动问题
  6. 浏览器访问网页的详细内部过程
  7. python爬虫设计模式_Python3网络爬虫(一):利用urllib进行简单的网页抓取
  8. 29 条运维工程师必会实用 Linux 命令
  9. 数据清洗与数据预处理浅析
  10. 计算机电子电路原理图,电路图讲解 电路图基础知识【图】
  11. Multisim 10软件介绍
  12. 宅男壁纸大全微信小程序源码-带动态壁纸支持多种流量主
  13. QoS mechanisms——LLQ(拥塞管理,低延时队列)
  14. html微信分享图标设置,微信分享之设置分享title和icon
  15. 双边功率谱密度和单边功率谱密度_以高斯信号为例,计算幅度谱、相位谱、双边功率谱、双边功率谱密度、单边功率谱、单边功率谱密度。...
  16. 苹果发布会总结:Mac 三产品线更新自研 M1 芯片,尝鲜只要 5299 元
  17. crm管理系统是什么意思 crm系统全称是什么 - whale帷幄
  18. win10麦克风说话没声音_怎样选主播麦克风
  19. 算法刷题(蓝)【基础篇+算法篇】【Python版】
  20. 【SendSms】短信服务java.lang.NoSuchMethodError: com.google.gson.JsonParser.parseString(Ljava/lang/String;)

热门文章

  1. 游戏网络通信数据解析_1
  2. Java经典试题(二)
  3. 什么是数据仓库,为什么要建立数据仓库?
  4. 1月1日服务器例行维护公告,1月13日服务器例行维护公告
  5. Nuke插件安装方法
  6. hdu5059 恶心模拟TAT
  7. 有感于2004雅典奥运会
  8. 河内塔php,基于HTML5的WebGL设计汉诺塔3D游戏
  9. 广州车展|继原力技术之后,长安深蓝半固态电池呼之欲出
  10. 使用Android API最佳实践