在shell脚本编写过程当中,咱们有足够理由相信使用echo等打印输出命令的频率是至关高的。那下面咱们来看看都有哪些打印输出命令以及它们的用法。php
echo命令:shell
功能说明:默认打印输出到标准输出(屏幕) 输出的字符串以空白字符隔开 并在最后自动加上换行符 语 法:echo [-ne][字符串] /echo [--help][--version] 参 数: -n: 取消自动换行功能 -e: 打开反斜杠|[ESC]键转义功能。字符串中出现如下字符,会特别处理, 不会当成通常字符输出。 \a 发出警告声 \b 删除前一个字符 \c 删除最后的字符及最后的换行 \e 删除最后的字符 \E 同\e \f 换行但光标仍停留在原来的位置 \n 换行且光标移至行首 \r 光标移至行首,但不换行 \t 插入tab \v 与\f同 \\ 插入\字符 \nnn 插入nnn(八进制)所表明的ASCII字符 -E: 取消反斜杠|[ESC]键转义功能(默认) --help:显示帮助信息 --version:显示版本信息 特殊使用:格式化文本(包含文件颜色和样式等) 例如: echo -e "\033[44;37;5m My\033[0m Color" 注释: \033 为[ESC]键的ASCII码 表示终端转义字符开始 [44;37;5m 分别表明背景色 前景色 光标闪烁 0m 表示恢复到终端默认设置 m 表示设置属性并结束很是规字符序列 注意:输出文本颜色 必须使用-e选项 可选择的颜色/动做编码以下: 编码 颜色/动做 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列 \033[60G 光标移动到第60列 \077 发蜂鸣声beep 使用实例: 1,模拟Linux服务启动的输出信息 #!/bin/bash # Green="\033[32m" Normal="\033[0m" Jump="\033[60G" Service=`basename $0` if [[ $1 == start ]];then echo -e "Strating $Service: $Jump[ ${Green}OK${Normal} ]" elif [[ $1 == stop ]];then echo -e "Stopping $Service: $Jump[ ${Green}OK${Normal} ]" else echo "Usage: ./$Service {start|stop}" fi
执行结果:bash
2,彩色进度条: #!/bin/bash # echo -e "\033[32m" b=`echo -e "\033[42;32m[]\033[0m "` echo Installing........ echo -------------------------------------------------------------- for ((i=0;$i<=60;i+=2)) do printf $b sleep 0.1 b=`echo -e "\033[42;32m[]\033[0m "`$b done echo -e "\033[32m" echo -------------------------------------------------------------- echo "Complete!" echo -e "\033[0m"
执行结果:ide
Printf命令:编码
功能描叙:一个更强大,更灵活的打印命令。 printf和C语言的使用方式相似。 和echo不同的是,它不会在最后自动加上换行符。 须要手工使用\n来指定换行。 语 法: printf format-string [arguments] 格式参数: %c: ASCII字符,若是参数给出字符串,则打印第一个字符 %d: 十进制整数 %i: 同%d %e: 浮点格式 ([-]d.精度[+-]dd) %E: 浮点格式 ([-d].精度E[+-]dd) %f: 浮点格式 ([-]ddd.precision) %g: %e或者%f的转换,若是后尾为0,则删除它们 %G: %E或者%f的转换,若是后尾为0,则删除它们 %o: 八进制 %s: 字符串 %u: 非零正整数 %x: 十六进制 %X: 非零正数,16进制,使用A-F表示10-15 %%: 表示字符"%" 注 意: 若是给出的格式参数的个数超过给出的参数的个数, 那么超出的部分为0或者null