分享
 
 
 

shell命令:echo命令详解

王朝学院·作者佚名  2016-05-26
窄屏简体版  字體: |||超大  

shell命令:echo命令详解 Posted on 2015-04-23 15:43 寒星月冷 阅读(...) 评论(...) 编辑 收藏功能说明:显示文字。

语 法:echo [-ne][字符串] / echo [--help][--version]

补充说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号。

参 数:

-n 不要在最后自动换行

-e 打开反斜杠ESC转义。

若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:

\a 发出警告声;

\b 删除前一个字符;

\c 最后不加上换行符号;

\f 换行但光标仍旧停留在原来的位置;

\n 换行且光标移至行首;

\r 光标移至行首,但不换行;

\t 插入tab;

\v 与\f相同;

\\ 插入\字符;

\nnn 插入nnn(八进制)所代表的ASCII字符;

-E 取消反斜杠ESC转义 (默认)

-help 显示帮助

-version 显示版本信息

############################################################ #

echo输出颜色文本 echo命令改变样式,以输出不同颜色的文本,必须有 -e 选项(开启echo中的转义)。

文本终端的显示颜色可以使用“ANSI非常规字符序列”来生成。

例如:echo -e "\033[44;37;5m ME\033[0m COOL"

解释:"\033[44;37;5m ME "设置背景为蓝色,前景为白色,闪烁光标,输出字符“ME”;

"\033[0m COOL"重新设置屏幕到缺省设置,输出字符 “COOL”。

"e"是命令echo的一个可选项,它用于激活特殊字符的解析器。

"\033"引导非常规字符序列(即"\033["表示终端转义字符开始,

"\033"即退出键<ESC>的ASCII码)。

"m"意味着设置属性然后结束非常规字符序列,这个例子里真正有效的字符是"44;37;5"和"0"。

修改"44;37;5"可以生成不同颜色的组合,数值和编码的前后顺序没有关系。 可以选择的编码如下所示(这些颜色是ANSI标准颜色): 编码 颜色/动作

0 重新设置属性到缺省设置

1 设置粗体

2 设置一半亮度(模拟彩色显示器的颜色)

4 设置下划线(模拟彩色显示器的颜色)

5 设置闪烁

7 设置反向图象

22 设置一般密度

24 关闭下划线

25 关闭闪烁

27 关闭反向图象

30 设置黑色前景

31 设置红色前景

32 设置绿色前景

33 设置黄色前景

34 设置蓝色前景

35 设置紫色前景

36 设置青色前景

37 设置白色(灰色)前景

38 在缺省的前景颜色上设置下划线

39 在缺省的前景颜色上关闭下划线

40 设置黑色背景

41 设置红色背景

42 设置绿色背景

43 设置黄色背景

44 设置蓝色背景

45 设置紫色背景

46 设置青色背景

47 设置白色(灰色)背景

49 设置缺省黑色背景

其他有趣的代码还有:

\033[2J 清除屏幕

\033[0q 关闭所有的键盘指示灯

\033[1q 设置"滚动锁定"指示灯(Scroll Lock)

\033[2q 设置"数值锁定"指示灯(Num Lock)

\033[3q 设置"大写锁定"指示灯(Caps Lock)

\033[15:40H 把关闭移动到第15行,40列

\007 发蜂鸣生beep

一些说明: 前景颜色各数字是对应背景颜色减去10。 结束非常规字符序列的"m"要紧跟前面的数字,不能有空格。

命令也可以写成echo -e "^[[44;37;5m ME \033[0m COOL",其中的"^["是先按Ctrl-V,然后再按<ESC>键产生的。

输出带有颜色的文本,echo命令必须带有选项"-e"。

这种方法只能暂时改变echo命令输出的文本的样式,logout后就恢复为默认。修改.bashrc文件,可以修改默认的显示样式。 如:在.bashrc文件的最后面追加一行:echo -e '\033[47;30m'。

#----------------------------------------------------------- #

建议:在shell文件的最前面,将echo命令的输出样式定义成变量。

# define echo terminal style

# color: 0~6 --> black, red, green, yellow, blue, purple, cyan, grey

export ECHO_STYLE_00="\033[0m"

# default style(black background, white foreground)

export ECHO_STYLE_01="\033[41;33;1m"

# red background, yellow foregound bold

echo -e "${ECHO_STYLE_01}echo command terminal style example${ECHO_STYLE_00}"

############################################################ #

echo命令的其他用法

1).光标跳到第60列,然后显示一个OK。

格式:echo -en '\033[60G' && echo OK

说明:"\033["是终端转义字符开始,60G是命令。

############################################################

然后给几个比较强大的脚本函数 1) cfont #by zuoyang http://hi.baidu.com/test/

cfont()

{ while (($#!=0))

do case $1 in

-b) echo -ne " "; ;;

-t) echo -ne "\t"; ;;

-n) echo -ne "\n"; ;;

-black) echo -ne "\033[30m"; ;;

-red) echo -ne "\033[31m"; ;;

-green) echo -ne "\033[32m"; ;;

-yellow) echo -ne "\033[33m"; ;;

-blue) echo -ne "\033[34m"; ;;

-purple) echo -ne "\033[35m"; ;;

-cyan) echo -ne "\033[36m"; ;;

-white|-gray) echo -ne "\033[37m"; ;;

-reset) echo -ne "\033[0m"; ;;

-h|-help|--help) echo "Usage: cfont -color1 message1 -color2 message2 ...";

echo "eg: cfont -red [ -blue message1 message2 -red ]"; ;;

*) echo -ne "$1" ;;

esac

shift

done }

使用方法是 cfont -颜色 字符串...

如: cfont -cyan abc

注意使用时要换行需要加入 -n 选项。想要恢复默认的要加入 -reset选项。 2) 颜色码表

#!/bin/bash T='gYw'

# The test textecho

echo " default 40m 41m 42m 43m 44m 45m 46m 47m"

## FGs 为前景(foreground)色, BG 为背景(background)色

for FGs in ' m' ' 1m' ' 30m' '1;30m' ' 31m' '1;31m' ' 32m' '1;32m' ' 33m' '1;33m' ' 34m' '1;34m' ' 35m' '1;35m' ' 36m' '1;36m' ' 37m' '1;37m'

do FG=$(echo $FGs|tr -d ' ')

echo -en " $FGs \033[$FG $T "

for BG in 40m 41m 42m 43m 44m 45m 46m 47m;

do echo -en " \033[$FG\033[$BG $T \033[0m"

done

echo

done

echo

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有