linux中echo学习笔记

作者:袖梨 2022-11-14

先介绍一下标准的command line ,它包含三个部件:

command_name option argument

好的,回来,echo就是将argument送出至标准输出(STDOUT),通常就是送到显示器输出。

还是直接跑一下来看看echo命令吧:

是不是觉得奇怪怎么就一个空白行,就回到shell prompt(就是$)上了。

原因就是因为echo在预设上,在显示完argument之后,还会送出一个换行符号。

但是上面的command并没有任何的argument,所以就只有一个换行符号了。

如果觉得不爽,想取消这个换行符号,好说,-n option 就完全可以帮你搞定:

这下舒服了吧,其实echo除了 -n option 之外,还有一些常用选项,如:

-e :启动反斜线控制字符的转换

-E:关闭反斜线控制字符的转换(注意跟上面的不同哦)

-n :取消行末的换行符号 (与 -e 选项下的 c 字符功能相同)

关于 echo 命令所支持的反斜线控制字符如下表:

a:ALERT / BELL (从系统喇叭送出铃声)

b:BACKSPACE ,也就是向左?h除?

c:取消行末的换行符号

E:ESCAPE,跳脱键

f:FORMFEED,换页字符

n:NEWLINE,换行字符

r:RETURN,回车键

t:TAB,表格跳位键

v:VERTICAL TAB,垂直表格跳位键

n:ASCII 八进制编码(以 x 开始为十六进制)

:反斜线本身

Ok,有了这些我们就可以输出下面的命令来看看echo的强大了:

上面两个有什么不同呢???试着分析一下吧……

…………………………

有没有想起大学谭浩强的C语言呢?

…………………………….

因为啊,e 字母后面是?h除键(b),因此输出结果就没有 e 了。

在结束时听到一声铃响,别担心,那是 a 的杰作!

由于同时使用了-n 选项,因此 shell prompt 紧接着在第二行之后。

若你不用 -n 的话,还有什么方法呢?……….(在 a 后再加个 c )。

在日后的 shell 操作及 shell script 设计上,echo 命令是最常被使用的

命令之一。

先小试牛刀,用 echo 来检查变量值:

……(这个变量的事,在以后会向大家娓娓道来)

ok,更多的关于 command line 的格式,以及 echo 命令的选项,

1)echo显示字符串

普通字符串可以在echo后直接输入字符串,但这样当要输出某些字符如"时会有问题(这种写法的时候"是被当作继行符处理过滤掉的,要输出一个"必须打 "",跟c语言printf输出的要求相象),所以一般最好用´string´ 或"string"的格式,这样即使是"也可以输出,方便直观。

#echo hello world
hello world

#echo hello" world
hello world

#echo hello"" world
hello" world

#echo ´hello"" world´ 或者: echo "hello"" world"
hello"" world

2)echo的转义显示: 加上-e参数

输出多行
#echo -e ´hello"nworld´
hello
world

输出ascii字符: echo -e "NNN (NNN为ascii字符的八进制码号,不符合八进制的将会按照字面意义进行打印)
#echo -e ´"61 "62 "101 "141´
1 2 A a

相关文章

精彩推荐