Linux命令(27)——echo命令

1.简介

echo命令用于在shell中打印shell变量的值,或者直接输出指定的字符串。

2.命令格式

echo [选项] [参数]

3.选项说明

-n:输出时,不在行尾添加换行符;
-e:使反斜杠的转义功能生效;
-E:禁用反斜杠的转义功能,为默认选项;
--help:显示帮助信息;
--version:显示版本信息;

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

\\:反斜杠;
\a:发出警告声;
\b:删除前一个字符;
\c:截断不输出\c后面的内容;
\f:换行,但光标仍旧停留在原来的位置;
\n:换行且光标移至行首;
\r:光标移至行首,但不换行;
\t:插入tab;
\v:与\f相同;
\nnn:插入nnn(八进制)所代表的ASCII字符;
\xHH:插入HH(十六进制)所代表的ASCII字符;

4.常用示例

(1)不换行输出。 echo默认换行输出,使echo不换行输出有两种方法。 方法一:使用命令选项-n禁止输出换行符。

echo -n what you want to output

方法二:使用命令选项 -e 让echo识别转义字符\c,echo默认是不识别转义字符的。转义字符\c使用man echo查看echo的使用手册,其意思是produce no further output,表示截断不输出\c后面的内容。

echo -e lalalala\cend #输出:lalalala

(2)使用echo打印带有颜色的字体。 Linux终端下输出带颜色的文字只需在文字前面添加如下格式:

\033[显示方式;前景色;背景色m

其中\033是ESC健的八进制,\033[即告诉终端后面是设置颜色的参数,显示方式,前景色,背景色均是数字。数字含义如下:

显示方式

意义

0

终端默认设置

1

高亮显示

4

使用下划线

5

闪烁

7

反白显示

8

不可见

颜色数字代号如下:

前景色

背景色

颜色

30

40

黑色

31

41

红色

32

42

绿色

33

43

黃色

34

44

蓝色

35

45

紫红色

36

46

青蓝色

37

47

白色

(a)显示红色字体:

echo -e "\e[1;31mThis is red text\e[0m"

输出: This is red text

其中,\e[0m表示恢复终端默认设置。

(b)显示绿色背景字体:

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

输出:

(c)文字闪动。使用前景色31(红色),背景色42(绿色)闪动:

echo -e "\033[5;31;42mMySQL Server Stop...\033[0m"

参考文献

[1]man echo [2]Linux命令大全.echo命令 [3]使用echo输出带颜色的字体

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏前端说吧

vue - 父组件数据变化控制子组件类名切换

先说当时的思路和实现 核心是父子组件传值和v-bind指令动态绑定class实现

15210
来自专栏程序员叨叨叨

Excel单元格内计算式及字符串拼接实现

&:逻辑并,用以拼接字符串 =:计算式求结果 " ":其内部放入要显示的字符串

9960
来自专栏软件开发

前端MVC Vue2学习总结(五)——表单输入绑定、组件

一、表单输入绑定 1.1、基础用法 你可以用 v-model 指令在表单控件元素上创建双向数据绑定。它会根据控件类型自动选取正确的方法来更新元素。尽管有些神奇,...

498140
来自专栏前端布道

Angular开发实践(四):组件之间的交互

在Angular应用开发中,组件可以说是随处可见的。本篇文章将介绍几种常见的组件通讯场景,也就是让两个或多个组件之间交互的方法。 根据数据的传递方向,分为父组件...

51680
来自专栏超然的博客

react小结

在react中,父组件给子组件传递数据时,就是以上的方式,通过给子组件设置props,子组件获取props中的值便可完成数据传递。 

9810
来自专栏云瓣

从 0 到 1 实现 React 系列 —— JSX 和 Virtual DOM

看源码一个痛处是会陷进理不顺主干的困局中,本系列文章在实现一个 (x)react 的同时理顺 React 框架的主干内容(JSX/虚拟DOM/...)

11910
来自专栏技术墨客

React 非受控组件

在大部分情况下,推荐使用 受控组件 来实现表单、输入框等状态控制。在受控组件中,表单等数据都有React组件自己处理。这里将介绍另外一种非受控组件,表单的数据有...

10120
来自专栏Java技术分享圈

杨老师课堂之Jquery的筛选,事件,效果,Ajax,javascript跨域)

D.closest()获得D所有父元素,含自己(D、B、A)与 D.parents() 对比

16820
来自专栏web前端

Vuejs --02 Vue实例

一、构造器      1、vm(view model 表示Vue实例),每个Vuejs都是通过构造函数Vue创建Vue的根实例启动 var vm = new V...

23280
来自专栏CIT极客

【奇淫巧技】Javascript入门笔记,打造最绚丽网页特效!

40260

扫码关注云+社区

领取腾讯云代金券