echo命令用于在shell中打印shell变量的值,或者直接输出指定的字符串。linux的echo命令,在shell编程中极为常用, 在终端下打印变量value的时候也是常常用到的,因此有必要了解下echo的用法echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。
语法
echo(选项)(参数)选项
-e:激活转义字符。使用-e选项时,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:
•a 发出警告声;
• 删除前一个字符;
•c 最后不加上换行符号;
•f 换行但光标仍旧停留在原来的位置;
•
换行且光标移至行首;
•
光标移至行首,但不换行;
• 插入tab;
•v 与f相同;
•\ 插入字符;
•
nn 插入nnn(八进制)所代表的ASCII字符;
参数
变量:指定要打印的变量。
实例
用echo命令打印带有色彩的文字:
文字色:
echo -e "e[1;31mThis is red texte[0m"
This is red text•e[1;31m 将颜色设置为红色
•e[0m 将颜色重新置回
颜色码:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37
背景色:
echo -e "e[1;42mGreed Backgrounde[0m"
Greed Background颜色码:重置=0,黑色=40,红色=41,绿色=42,黄色=43,蓝色=44,洋红=45,青色=46,白色=47
例如:白底红字为:echo -e "e[1;31;47mThis is red texte[0m"
文字闪动:
echo -e " 33[37;31;5mMySQL Server Stop... 33[39;49;0m"
红色数字处还有其他数字参数:0 关闭所有属性、1 设置高亮度(加粗)、4 下划线、5 闪烁、7 反显、8 消隐
echo -n 不换行输出
$echo -n "123"
$echo "456"
最终输出
123456
echo -e 处理特殊字符
若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:
a 发出警告声;
删除前一个字符;
c 最后不加上换行符号;
f 换行但光标仍旧停留在原来的位置;
换行且光标移至行首;
光标移至行首,但不换行;
插入tab;
v 与f相同;
\ 插入字符;
nn 插入nnn(八进制)所代表的ASCII字符;
下面举例说明一下:
$echo -e "adddd" //前面的a会被擦除
dddd
$echo -e "aadddd" //输出同时会发出报警声音
adddd
$echo -e "a
dddd" //自动换行
a
dddd
我们在使用linux的过程中,经常会去下载安装包,下载时候的那个进度提示是不是比较好玩,下载进度的百分比在不断变化,利用echo -e和-n参数我们也可以实现这个效果了。
******************************************************************************************************************************************************************************************************************
- echo -e " 33[背景颜色;字体颜色m字符串 33[0m
格式: echo -e " 33[字背景颜色;字体颜色m字符串 33[0m"
例如:
echo -e " 33[41;36m something here 33[0m"
其中41的位置代表底色, 36的位置是代表字的颜色
那些ascii code 是对颜色调用的始末.
33[ ; m …… 33[0m
字背景颜色范围:40----49
40:黑
41:深红
42:绿
43:黄色
44:蓝色
45:紫色
46:深绿
47:白色
字颜色:30-----------39
30:黑
31:红
32:绿
33:黄
34:蓝色
35:紫色
36:深绿
37:白色
===============================================ANSI控制码的说明
33[0m 关闭所有属性
33[1m 设置高亮度
33[4m 下划线
33[5m 闪烁
33[7m 反显
33[8m 消隐
33[30m -- 33[37m 设置前景色
33[40m -- 33[47m 设置背景色
33[nA 光标上移n行
33[nB 光标下移n行
33[nC 光标右移n行
33[nD 光标左移n行
33[y;xH设置光标位置
33[2J 清屏
33[K 清除从光标到行尾的内容
33[s 保存光标位置
33[u 恢复光标位置
33[?25l 隐藏光标
33[?25h 显示光标