shell中echo命令详解
转载⾃
linux的echo命令, 在shell编程中极为常⽤, 在终端下打印变量value的时候也是常常⽤到的, 因此有必要了解下echo的⽤法。其主要⽤于字符串的输出。命令格式:
语法:
1. # echo [Options] [String]
⽅括号中的项⽬是可选的。字符串可以定义为字符的有限序列(如字母,数字,符号,标点符号)。
当echo命令不带任何选项或字符串使⽤时,它会在显⽰屏上返回⼀个空⽩⾏,后⾯换⼀⾏跟上命令提⽰符。这是因为按下回车键就是发送⼀个信号给系统以开始⼀个新⾏,⽽echo重复了该信号。
shell命令属于什么语言# 该命令的⼀般格式为: echo [ -n ] 字符串
其中选项-n表⽰输出⽂字后不换⾏;字符串能加引号,也能不加引号。
⽤echo命令输出加引号的字符串时,将字符串原样输出;⽤echo命令输出不加引号的字符串时,将字符
串中的各个单词作为字符串输出,各字符串之间⽤⼀个空格分割。
显⽰普通字符串:
echo "It is a test"
这⾥的双引号完全可以省略,以下命令与上⾯实例效果⼀致:
echo It is a test
显⽰转义字符
选项:
-n 不换⾏输出
-e 启⽤反斜线转义解释
-E 禁⽤反斜线转义解释(默认)
功能说明:显⽰⽂字。
语  法:echo [-ne][字符串]    或  echo [--help][--version]
补充说明:echo会将输⼊的字符串送往标准输出。输出的字符串间以空⽩字符隔开, 并在最后加上换⾏号。
参  数:-n 不要在最后⾃动换⾏  。-e 若字符串中出现以下字符,则特别加以处理,⽽不会将它当成⼀般⽂字输出:
\a 发出警告声;
\b 删除前⼀个字符;
\c 最后不加上换⾏符号;
\f 换⾏但光标仍旧停留在原来的位置;
\n 换⾏且光标移⾄⾏⾸;
\r 光标移⾄⾏⾸,但不换⾏;
\t 插⼊tab;
\v 与\f相同;
\\ 插⼊\字符;
\nnn 插⼊nnn(⼋进制)所代表的ASCII字符;
–help 显⽰帮助
–version 显⽰版本信息
echo "\"It is a test\""
结果将是:
"It is a test"
同样,双引号也可以省略
显⽰变量
read 命令从标准输⼊中读取⼀⾏,并把输⼊⾏的每个字段的值指定给 shell 变量
#!/bin/sh
read name
echo "$name It is a test"
以上代码保存为 test.sh,name 接收标准输⼊的变量,结果将是:
[root@www ~]# sh test.sh
OK                    #标准输⼊
OK It is a test        #输出
显⽰换⾏
echo -e "OK! \n" # -e 开启转义
echo "It it a test"
输出结果:
OK!
It it a test
显⽰不换⾏
#!/bin/sh
echo -e "OK! \c" # -e 开启转义 \c 不换⾏
echo "It is a test"
输出结果:
OK! It is a test
显⽰结果定向⾄⽂件
echo "It is a test" > myfile
原样输出字符串,不进⾏转义或取变量(⽤单引号)
echo '$name\"'
输出结果:
$name\"
显⽰命令执⾏结果
echo `date`
注意: 这⾥使⽤的是反引号 `, ⽽不是单引号 '。
结果将显⽰当前⽇期
Thu Jul 24 10:08:46 CST 2014
常⽤情景
Linux的echo命令, 在shell编程中极为常⽤, 在终端下打印变量value的时候也是常常⽤到。
⽐如:echo可⽤作显⽰注释,⽤于⼀些批命令中需要注释给⽤户看的地⽅,⽐如前⼀条命令执⾏会花很长时间,常会⽤echo显⽰⼀条信息让⽤户知道这个时候⽐较慢,稍微等待⼀会。
在Linux中echo命令⽤来在标准输出上显⽰⼀段字符,⽐如:
echo "the echo command test!"
这个就会输出“the echo command test!”这⼀⾏⽂字!
echo "the echo command test!">a.sh
这个就会在a.sh⽂件中输出“the echo command test!”这⼀⾏⽂字! 该命令的⼀般格式为: echo [ -n ] 字符串其中选项n表⽰输出⽂字后不换⾏;字符串能加引号,也能不加引号。⽤echo命令输出加引号的字符串时,将字符串原样输出;⽤echo命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间⽤⼀个空格分割。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。