【shell】echo -n 和echo -e |echo换行/不换行输出|彩色输出

本文详细解释了shell命令`echo`的各种用法,包括不换行输出(echo-n)、处理特殊字符(echo-e)、输出ASCII字符、彩色输出以及echo命令中单双引号的区别。还介绍了控制序列在输出中的作用,如背景和前景颜色、换行和光标移动等。
摘要由CSDN通过智能技术生成

目录

echo -n 不换行输出

echo -e 处理特殊字符

输出ascii字符

彩色输出

echo换行

echo 后跟单双引号的区别

echo -n 不换行输出

$echo -n "123"

$echo "456"

最终输出

123456

而不是

123

456

echo -e 处理特殊字符

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

\a 发出警告声;

\b 删除前一个字符;

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

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

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

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

\t 插入tab;

\v 与\f相同;

\ 插入\字符;

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

$echo -e "a\bdddd"

dddd

$echo -e "a\adddd" //输出同时会发出报警声音

adddd

$echo -e "a\ndddd" //自动换行

a

dddd

注:echo -e "\c"和echo -n ""效果一样。

输出ascii字符

#echo -e ´\61 \62 \101 \141´

1 2 A a

彩色输出

格式:

echo -e "\033[字背景颜色;文字颜色m字符串\033[0m"     >>同时添加字背景颜色和文字颜色

echo -e "\033[文字颜色m字符串\033[0m"               >> 仅添加文字颜色

实例:

字颜色:30—–37

  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"

字背景颜色范围:40—–47

  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 显示光标

更多链接:https://blog.csdn.net/weixin_44297303/article/details/88206636

 其中,\e[1;32m是整体转义的部分,数字代表的是字体的颜色和背景的颜色等等。其中例子中数字1 表示字体高亮度(加粗),32表示字体为绿色,0 表示关闭所有属 性。

echo换行

加-e:激活转义字符,然后内容中的"\n" 就代表换行了。

脚本中直接换行:

echo  "HHHHHHHHHH

           CCCCCCCCCC

           DDDDDDDDDD"

echon 如果内容为单一字段,可以用单引号也可以用双引号,如果是一个代码片段,那么要用单引号!

echo '代码片段'

echo的内容最好为一行,不能多行。

代码片段中 换行用 \n表示换行(\n后面紧跟内容,不必换行)

如果想echo内容为 你"好,下面是2中方法

echo "你\"好" 或者echo '你"好'

参考

https://blog.csdn.net/u012516524/article/details/84645830

https://www.cnblogs.com/wzhuo/p/6624598.html

————————————————

版权声明:本文为CSDN博主「bandaoyu」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/bandaoyu/article/details/118105708

  • 21
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值