echo命令用于在shell中打印shell变量的值,或者直接输出指定的字符串。linux的echo命令,在shell编程中极为常用, 在终端下打印变量value的时候也是常常用到的,因此有必要了解下echo的用法echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。

语法

echo  (选项)   (参数)

选项

-e:激活转义字符。

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

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

参数

变量:指定要打印的变量。

实例

  1. 输入一行文本并显示在标准输出上

$ echo Tecmint is a community of Linux Nerds
#会输出下面的文本: Tecmint is a community of Linux Nerds

  2. 输出一个声明的变量值

#比如,声明变量x并给它赋值为10。
$ x=
#会输出它的值:
$ echo The value of variable x = $x The value of variable x =

  3. 使用‘\b‘选项

#  ‘-e‘后带上'\b'会删除字符间的所有空格。
$ echo -e "Tecmint \bis \ba \bcommunity \bof \bLinux \bNerds" TecmintisacommunityofLinuxNerds

  注意: Linux中的选项‘-e‘扮演了转义字符反斜线的翻译器。

4. 使用‘\n‘选项

#  ‘-e‘后面的带上‘\n’行会在遇到的地方作为新的一行
$ echo -e "Tecmint \nis \na \ncommunity \nof \nLinux \nNerds" Tecmint
is
a
community
of
Linux
Nerds

5. 使用‘\t‘选项

#   ‘-e‘后面跟上‘\t’会在空格间加上水平制表符。
$ echo -e "Tecmint \tis \ta \tcommunity \tof \tLinux \tNerds" Tecmint is a community of Linux Nerds

6. 也可以同时使用换行‘\n‘与水平制表符‘\t‘

$ echo -e "\n\tTecmint \n\tis \n\ta \n\tcommunity \n\tof \n\tLinux \n\tNerds" 

Tecmint
is
a
community
of
Linux
Nerds

7. 使用‘\v‘选项

$ echo -e "\vTecmint \vis \va \vcommunity \vof \vLinux \vNerds" 

Tecmint
is
a
community
of
Linux
Nerds

8. 也可以同时使用换行‘\n‘与垂直制表符‘\v‘

$ echo -e "\n\vTecmint \n\vis \n\va \n\vcommunity \n\vof \n\vLinux \n\vNerds" 

Tecmint 

is 

a 

community 

of 

Linux 

Nerds

  注意: 你可以按照你的需求连续使用两个或者多个垂直制表符,水平制表符与换行符。

9. 使用‘\r‘选项

#   ‘-e‘后面跟上‘\r’来指定输出中的回车符。(LCTT 译注:会覆写行开头的字符)
$ echo -e "Tecmint \ris a community of Linux Nerds" is a community of Linux Nerds

10. 使用‘\c‘选项

#    ‘-e‘后面跟上‘\c’会抑制输出后面的字符并且最后不会换新行。
$ echo -e "Tecmint is a community \cof Linux Nerds" Tecmint is a community @tecmint:~$

11. ‘-n‘会在echo完后不会输出新行

$ echo -n "Tecmint is a community of Linux Nerds"
Tecmint is a community of Linux Nerds@tecmint:~/Documents$

12. 使用‘\a‘选项

#   ‘-e‘后面跟上‘\a’选项会听到声音警告。
$ echo -e "Tecmint is a community of \aLinux Nerds" Tecmint is a community of Linux Nerds

  注意: 在你开始前,请先检查你的音量设置。

13. 使用echo命令打印所有的文件和文件夹(ls命令的替代)

$ echo * 

.odt .pdf .odt .pdf .odt .pdf .odt .pdf .odt .pdf 108a.odt .odt .pdf .odt .pdf 110b.odt .odt 
.pdf .odt .pdf .odt .pdf .odt linux-headers-3.16.-customkernel_1_amd64.deb linux-image-3.16.-customkernel_1_amd64.deb
network.jpeg

14. 打印制定的文件类型

#比如,让我们假设你想要打印所有的‘.jpeg‘文件,使用下面的命令。
$ echo *.jpeg network.jpeg

15. echo可以使用重定向符来输出到一个文件而不是标准输出

$ echo "Test Page" > testpage 

## Check Content
avi@tecmint:~$ cat testpage
Test Page

16. 显示转义字符

echo "\"It is a test\""
#结果将是:
"It is a test"
#同样,双引号也可以省略

17. 原样输出字符串,不进行转义或取变量(用单引号)

echo '$name\"'
# 输出结果:
$name\"

18. 显示命令执行结果

echo `date`
#结果将显示当前日期 Thu Jul :: CST

19. 用echo命令打印带有色彩的文字:

echo -e "\e[1;31mThis is red text \e[0mThis is another text"
This is red text This is another text
# \e[;31m 将颜色设置为红色
# \e[0m 将颜色重新置回

  颜色码:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37

19. 用echo命令打印带有背景色的文字:

echo -e "\e[1;42mGreed Background\e[0m"
Greed Background

  颜色码:重置=0,黑色=40,红色=41,绿色=42,黄色=43,蓝色=44,洋红=45,青色=46,白色=47

19. 用echo命令打印闪动的文字:

echo -e "\033[37;31;35mMySQL Server Stop...\033[39;49;0m  need to restart "
MySQL Server Stop... need to restart

  红色数字处还有其他数字参数:0 关闭所有属性、1 设置高亮度(加粗)、4 下划线、5 闪烁、7 反显、8 消隐

linux命令学习之:echo的更多相关文章

  1. linux命令学习:echo详解,格式化输出,不换行输出

    shell脚本不换行刷新数据 #!/bin/bash ] do a=$(ifconfig eth0 | grep 'RX pac' | awk '{print $2}' | awk -F: '{pri ...

  2. Linux命令学习笔记1

    1.Linux命令学习 2.Mkdir /data       -创建文件夹 在/下创建文件夹 data 3.Cd               -目录切换 列如cd / 4.Touch /data/1 ...

  3. 《Linux命令学习手册》系列分享专栏

    <Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/207 ...

  4. 20155229付钰涵-虚拟机安装及LINUX命令学习

    安装Ubuntu遇到的问题 问题一: 新建虚拟电脑的版本只有32-bit,与老师所给教程中的64-bit不符.为此我上百度搜寻了答案. 第一种方法: 控制面板--程序与功能--启动或关闭windows ...

  5. 安装虚拟机&Linux命令学习

    安装虚拟机&Linux命令学习 基于VirtualBox虚拟机安装Ubuntu 1.下载安装VirtualBox 根据自己电脑(32位操作系统)的实际情况,我在网上找了相应的VirtualBo ...

  6. (转)Linux命令学习总结:dos2unix - unix2dos

    Linux命令学习总结:dos2unix - unix2dos 命令简介: 原文:http://www.cnblogs.com/kerrycode/p/5077969.html dos2unix是将W ...

  7. 别出心裁的Linux命令学习法

    别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...

  8. Linux命令学习

    Linux命令学习 Ubuntu常用快捷键 •Ctrl+Alt+T: 打开终端 •Ctrl+Shift+T: 新建标签页 •Tab: 终端中命令补全 •Alt+数字N: 终端中切换到第N个标签页 •↑ ...

  9. Linux命令学习总结之rmdir命令的相关资料可以参考下

    这篇文章主要介绍了Linux命令学习总结之rmdir命令的相关资料,需要的朋友可以参考下(http://www.nanke0834.com) 命令简介: rmdir命令用用来删除空目录,如果目录非空, ...

  10. linux命令学习之:chmod

    chmod命令用来变更文件或目录的权限.在Linux系统家族里,文件或目录权限的控制分别以读取R.写入W.执行X3种一般权限来区分,另有3种特殊权限可供运用.用户可以使用chmod指令去变更文件与目录 ...

随机推荐

  1. vue:在router里面给页面加title

    vue中给组件页面加页面标题:{ path: '/', name: 'index', component: disconnect, meta: { title: '首页' } }, { path: ' ...

  2. LeetCode OJ 24. Swap Nodes in Pairs

    Given a linked list, swap every two adjacent nodes and return its head. For example,Given 1->2-&g ...

  3. linux文件和目录的删除、新建、移动等操作

    在Linux下进行切换目录   cd 在Linux下查看当前目录下的内容   ls.  ll.  ls -al 如何显示当前命令所在的目录路径   pwd 在Linux下创建目录   mkdir 在L ...

  4. 434. Number of Segments in a String

    原题: 434. Number of Segments in a String 解题: 刚看到题目时,觉得可以通过统计空格个数,但想想有可能会有多个空格的情况 思路: 一:遍历字符,if条件碰到非空格 ...

  5. KVM虚拟化技术(二)KVM介绍

    KVM:Kernel Virtual Machine KVM是基于虚拟化扩展的x86硬件,是Linux完全原生的全虚拟化解决方案.部分半虚拟化支持,主要是通过半虚拟网络驱动程序的形式用于Linux和W ...

  6. 第六次Scrum冲刺

    第六次Scrum冲刺 1.成员今日完成情况 队员 今日完成任务 刘佳 前端构建 李佳 后端设计 周世元 数据设计 杨小妮 博客编写 许燕婷 管理团队当日及次日任务 陈水莲 性能测试用例设计 曾丽丽 性 ...

  7. yum源制作

    CentOS7 同步远程镜像 搭建本地yum服务器同步CentOS镜像站点的数据到本地服务器,使用nginx实现http服务向局域网内的其他机器提供yum服务,解决内网yum安装软件的问题. 一.前提 ...

  8. Redis Cluster在线迁移

    由于之前的redis cluster物理硬件性能不足.决定升级到更好的服务器上.考虑到redis是核心生产数据库,决定在线迁移,迁移过程,不中断服务. 下面是测试环境的完成迁移步骤:1. 原环境(测试 ...

  9. kubernetes ui 搭建

    1.部署Kubernetes云计算平台,至少准备两台服务器,此处为3台 Kubernetes Master节点:192.168.0.111 Kubernetes Node1节点:192.168.0.1 ...

  10. poj1061-青蛙的约会-(贝祖定理+扩展欧几里得定理+同余定理)

    青蛙的约会 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions:132162   Accepted: 29199 Descripti ...