LinuxShellecho命令输出格式详解

作者:

文章目录
  • Echo the STRING(s) to standard output. echo [ˈekəʊ]:n. 回响,回声,回音,映现 v. 回响,回荡,发出回声,产生回响
  • 以上为个人经验,希望能给大家一个参考,也希望大家多多支持风君子博客。 您可能感兴趣的文章: 在Linux中改变echo输出颜色的实现方法 linux中的echo命令使用及说明 linux命令:echo使用解读 Linux echo文本处理命令的使用及示例 Linux echo命令的使用及三种实现方式 linux echo命令以及linux echo命令提示权限不够的解决办法
  • 目录
    • 1.echo- display a line of text
      • 1.1. User Commands
      • 1.2. 内容输出后换行 (自带换行符)
      • 1.3.-n- do not output the trailing newline (取消换行符)
      • 1.4.-e- enable interpretation of backslash escapes (支持反斜线控制的字符转换)
      • 1.5. 设置打印字体颜色
      • 1.6. 设置打印字体背景颜色
      • 1.7. 打印设置
      • 1.8.-E- disable interpretation of backslash escapes (default)
      • 1.9.echo yongqiang cheng
    • 总结

      Echo the STRING(s) to standard output.

      echo [ˈekəʊ]:n. 回响,回声,回音,映现 v. 回响,回荡,发出回声,产生回响
      

      (base) yongqiang@yongqiang:~$ man echo
      

      输出内容,然后输出换行符号。

      (base) yongqiang@yongqiang:~$ echo "yongqiang"
      yongqiang
      (base) yongqiang@yongqiang:~$ echo yongqiang
      yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo "Yongqiang Cheng"
      Yongqiang Cheng
      (base) yongqiang@yongqiang:~$ echo Yongqiang Cheng
      Yongqiang Cheng
      (base) yongqiang@yongqiang:~$
      

      取消输出后行末的换行符号,内容输出后不换行。

      trail [treɪl]:v. 跟踪,追踪,拖,磨蹭 n. 小径,路径,踪迹,足迹
      
      (base) yongqiang@yongqiang:~$ echo "Yongqiang Cheng"
      Yongqiang Cheng
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -n "Yongqiang Cheng"
      Yongqiang Cheng(base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$
      

      如果加入 -n 选项,则在输出内容结束后,不会换行,直接显示新行的提示符。

      (base) yongqiang@yongqiang:~$ echo Yongqiang Cheng
      Yongqiang Cheng
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo Yongqiang; echo Cheng
      Yongqiang
      Cheng
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -n Yongqiang; echo Cheng
      YongqiangCheng
      (base) yongqiang@yongqiang:~$
      

      加分号表示一条语句的完结。

      检索语句中的转义符并执行,需要使用双引号 " "

      If -e is in effect, the following sequences are recognized:

      \     backslash - 输出 
      a     alert (BEL) - 输出警告音
      b     backspace - 退格键,删除左边一个字符
      c     produce no further output - 取消输出行末的换行符,和 -n 选项一致
      e     escape - Esc 键
      f     form feed - 换页符
      n     new line - 换行符
      r     carriage return - 回车键
      t     horizontal tab - 水平制表符
      v     vertical tab - 垂直制表符
      NNN  byte with octal value NNN (1 to 3 digits) - 按照八进制 ASCII 码表输出字符,其中 0 为数字 0,NNN 是三位八进制数
      xHH   byte with hexadecimal value HH (1 to 2 digits) - 按照十六进制 ASCII 码表输出字符,其中 hh 是两位十六进制数
      
      carriage [ˈkærɪdʒ]:n. 运输,运费,举止,仪态
      
      (base) yongqiang@yongqiang:~$ echo -e "\"
      
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "a"
      
      (base) yongqiang@yongqiang:~$
      

      b 删除左边一个字符。

      (base) yongqiang@yongqiang:~$ echo -e "yongbqiang"
      yonqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "yongqiangb"
      yongqiang
      (base) yongqiang@yongqiang:~$
      

      输出内容结束后,不会换行,且 c 之后的内容不输出。

      (base) yongqiang@yongqiang:~$ echo -e "yongqiang"
      yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "yongqiangc"
      yongqiang(base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "yongcqiang"
      yong(base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$
      

      t 水平制表符,Tab 键。

      (base) yongqiang@yongqiang:~$ echo -e "AaatBbbtCcc"
      Aaa     Bbb     Ccc
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "AaatBbbtCccnDddtEeetFff"
      Aaa     Bbb     Ccc
      Ddd     Eee     Fff
      (base) yongqiang@yongqiang:~$
      

      输入八进制,打印对应的 ASCII 码。65 = 101 = ‘A’
      输入十六进制,打印对应的 ASCII 码。65 = x41 = ‘A’

      (base) yongqiang@yongqiang:~$ echo -e "101t102t103n104t105t106"
      A       B       C
      D       E       F
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "x41tx42tx43nx44tx45tx46"
      A       B       C
      D       E       F
      (base) yongqiang@yongqiang:~$
      

      n 换行符

      (base) yongqiang@yongqiang:~$ echo -e "yongnqiang"
      yong
      qiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "yongqiangn"
      yongqiang
      
      (base) yongqiang@yongqiang:~$
      

      f 换页符

      (base) yongqiang@yongqiang:~$ echo -e "yongfqiang"
      yong
      qiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "yongqiangf"
      yongqiang
      
      (base) yongqiang@yongqiang:~$
      

      r 光标回到行首,后面输出的内容会覆盖之前的输出,可用于制作进度条。

      (base) yongqiang@yongqiang:~$ echo -e "yongrqiang"
      qiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "yongqiangrcheng"
      chengiang
      (base) yongqiang@yongqiang:~$
      

      v 垂直制表符

      (base) yongqiang@yongqiang:~$ echo -e "yongvqiangvcheng"
      yong
          qiang
               cheng
      (base) yongqiang@yongqiang:~$
      

      e[ 是标准格式,代表颜色输出开始。
      e[0m 是标准格式,代表颜色输出结束。

      字体颜色:30m=黑色,31m=红色,32m=绿色,33m=黄色,34m=蓝色,35m=洋红,36m=青色,37m=白色。

      (base) yongqiang@yongqiang:~$ echo -e "e[30m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[31m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[32m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[33m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[34m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[35m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[36m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[37m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      

      字体颜色:1;30m=亮黑色,1;31m=亮红色,1;32m=亮绿色,1;33m=亮黄色,1;34m=亮蓝色,1;35m=亮洋红,1;36m=亮青色,1;37m=亮白色。

      (base) yongqiang@yongqiang:~$ echo -e "e[1;30m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;31m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;32m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;33m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;34m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;35m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;36m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;37m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      

      e[ 是标准格式,代表颜色输出开始。

      e[0m 是标准格式,代表颜色输出结束。

      背景颜色:40m=黑色,41m=红色,42m=绿色,43m=黄色,44m=蓝色,45m=洋红,46m=青色,47m=白色。

      (base) yongqiang@yongqiang:~$ echo -e "e[40m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[41m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[42m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[43m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[44m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[45m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[46m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[47m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      

      (base) yongqiang@yongqiang:~$ echo -e "e[1;40m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;41m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;42m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;43m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;44m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;45m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;46m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "e[1;47m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      

      33e 效果相同。

      (base) yongqiang@yongqiang:~$ echo -e "e[4m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "33[4m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -e "33[4m yongqiang 33[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      

      闪烁显示。

      (base) yongqiang@yongqiang:~$ echo -e "33[5m yongqiang 33[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      

      红色字体,白色背景显示。

      (base) yongqiang@yongqiang:~$ echo -e "e[31;47m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      

      禁用转义字符。

      (base) yongqiang@yongqiang:~$ echo -e "e[31;47m yongqiang e[0m"
       yongqiang
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo -E "e[31;47m yongqiang e[0m"
      e[31;47m yongqiang e[0m
      (base) yongqiang@yongqiang:~$
      

      (base) yongqiang@yongqiang:~$ echo yongqiang cheng
      yongqiang cheng
      (base) yongqiang@yongqiang:~$
      (base) yongqiang@yongqiang:~$ echo yongqiang    cheng
      yongqiang cheng
      (base) yongqiang@yongqiang:~$
      

      以上为个人经验,希望能给大家一个参考,也希望大家多多支持风君子博客。

      您可能感兴趣的文章:

      • 在Linux中改变echo输出颜色的实现方法
      • linux中的echo命令使用及说明
      • linux命令:echo使用解读
      • Linux echo文本处理命令的使用及示例
      • Linux echo命令的使用及三种实现方式
      • linux echo命令以及linux echo命令提示权限不够的解决办法

      站内搜索