Linux命令--echo

一、选项

  -e:激活转义符()
  -n:忽略尾部自动换行符(echo命令尾部自动添加换行符)

二、转义符:(需要加双引号“”)

\a 发出警告声;
\b 删除前一个字符; 
\c 最后不加上换行符号; 
\f 换行但光标仍旧停留在原来的位置; 
\n 换行且光标移至行首; 
\r 光标移至行首,但不换行; 
\t 插入tab; 
\v 与\f相同; 
\\ 插入\字符;
 \nnn 插入nnn(八进制)所代表的ASCII字符

注意事项:
1、 使用不带引号的echo是,没法在索要像是的文本中使用分号(;)。因为分号在Linux里被用作命令定界符。
2、 变量替换是在单引号中无效。

三、echo显示颜色

echo显示颜色需要使用参数-e

格式为:
echo -e \e[xx;xxm 文字 \e[xx;xxm ##xx为文字颜色或背景颜色或特殊控制

文字颜色
echo -e "\033[30m 黑色字 \033[0m"
echo -e "\033[31m 红色字 \033[0m"
echo -e "\033[32m 绿色字 \033[0m"
echo -e "\033[33m 黄色字 \033[0m"
echo -e "\033[34m 蓝色字 \033[0m"
echo -e "\033[35m 紫色字 \033[0m"
echo -e "\033[36m 天蓝字 \033[0m"
echo -e "\033[37m 白色字 \033[0m"

背景颜色
echo -e "\033[40;37m 黑底 \033[0m"
echo -e "\033[41;37m 红底 \033[0m"
echo -e "\033[42;37m 绿底 \033[0m"
echo -e "\033[43;37m 黄底 \033[0m"
echo -e "\033[44;37m 蓝底 \033[0m"
echo -e "\033[45;37m 紫底 \033[0m"
echo -e "\033[46;37m 天蓝底 \033[0m"
echo -e "\033[47;30m 白底 \033[0m"

特殊的控制显示
\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 显示光标

注意事项
1、echo时如果要打印带!号的句子不可以用“”可以用 单引号‘’ 反斜线\ 或者什么都不带*

[root@cxm ~]# echo "hello world !"
-bash: !": event not found


[root@cxm ~]# echo hello world !
hello world !
[root@cxm ~]# echo 'hello world !'
hello world !
[root@cxm ~]# echo  "hello world \!"
hello world \!

2、echo时如果打印带分号 ;的句子。必须要带单引号‘’ 或者双引号“”(因为分号在bash中被视为命令定界符)

[root@cxm ~]# echo hello;hell
hello
-bash: hell: 未找到命令


[root@cxm ~]# echo 'hello;hello'
hello;hello
[root@cxm ~]# echo "hello;hello"
hello;hello

3、echo时如果带有变量替换 不能用单引号‘’

[root@cxm ~]# echo '$LANG'
$LANG


[root@cxm ~]# echo $LANG
zh_CN.UTF-8
[root@cxm ~]# echo "$LANG"
zh_CN.UTF-8

你可能感兴趣的:(Linux命令--echo)