linux命令echo怎么使用

本文讲解"linux命令echo如何使用",希望能够解决相关问题。

一、语法

echo [-neE]  [arg ...]

(1)含义

  • -n:表示输出字符串不换行

  • -e:表示对于转义字符按对应的方式进行处理(若不加-e ,那么在输出时转义字符会按照普通字符进行处理,并不会达到自己想要达到的目的。)

  • -E:禁用转义解释

转义字符含义
\b删除前一个字符
\n换行
\t水平制表符(tab)
\v垂直制表符(tab)
\c\c后面的字符将不会输出,输出完毕后也不会换行
\r光标移动到首行,不换行
\f换行,光标停在原处
\e删除后一个字符
\输出\
\0nnn输出八进制nnn代表的ASCII字符
\xHH输出十六进制数HH代表的ASCII字符
\a输出一个警告的声音

(2)实例

[root@localhost my_shell]# echo "hello "
hello 
[root@localhost my_shell]# echo -n "hello "
hello [root@localhost my_shell]# echo  "hello \b"
hello \b
[root@localhost my_shell]# echo -e "hello \b"
hello 
[root@localhost my_shell]# echo -en "hello \b"
hello[root@localhost my_shell]# echo -e "hello\tworld"
hello	world
[root@localhost my_shell]# echo -e "hello\nworld"
hello
world
[root@localhost my_shell]# echo -e "hello\vworld"
hello
     world
[root@localhost my_shell]# echo -e "hello\cworld"
hello[root@localhost my_shell]# echo -e "hello\rworld"
world
[root@localhost my_shell]# echo -e "hello\aworld"
helloworld
[root@localhost my_shell]# echo -e "hello\cworld"
hello[root@localhost my_shell]# echo -e "\ehelloworld"
elloworld
[root@localhost my_shell]# echo -e "hello\\world"
hello\world
[root@localhost my_shell]# echo -e "\x31"
1
[root@localhost my_shell]# echo -e "\0123"
S

(3)具体用法

上面介绍的主要是一些输出字符串相关的具体用法,下面详细例举一些echo命令的其他用法。

1、显示普通字符串

[root@localhost ~]# echo "hello world"
hello world
[root@localhost ~]# echo hello world
hello world

#双引号可以省略,效果一致。(字符串的输出都是如此,下面一些实例也是可以省略双引号也能达到相同效果)

2、显示变量

这里用到read命令(从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量)

[root@localhost ~]# read name
Michael Zhang
[root@localhost ~]# echo "My name is $name"
My name is Michael Zhang

3、显示换行

[root@localhost ~]# echo -e "hello \nworld"
hello 
world

4、显示不换行

#!/bin/sh
echo -e "OK! \c" # -e 开启转义 \c 不换行
echo "hello world"
#结果如下
OK! hello world

5、显示转义字符

[root@localhost ~]# echo "\"hello world\""
"hello world"

6、重定向

结果输出到文件

echo "hello world" > my_file
#将hello world输出到my_file文件

7、原样输出

用单引号可原样输出。

[root@localhost ~]# echo '$name\"'
$name\"
[root@localhost ~]# echo '$name'
$name

8、显示命令执行结果

#显示当前日期
[root@localhost ~]# echo `date`
Sat Jan 2 23:12:39 CST 2021

这里使用的是反引号`, 而不是单引号’。

实际上输出一些执行命令的结果就是这样用反引号。

二、echo的重定向

重定向是Shell中的一个重要内容,可以查看我的文章Linux中的重定向。

echo命令的重定向功能经常被用于清空文件内容(删除文件)时使用,具体在我的另一篇文章中介绍:Linux中清空文件的方式

(1)echo "content" > filename

将content覆盖到filename文件当中去,filename文件当中之前的内容不复存在了,实际上是修改了原文件的内容。

(2)echo "content" >> filename

将content追加到filename文件后,对filename文件之前的内容不修改,只进行增添,也叫追加重定向。

(3)实例

[root@localhost my_shell]# touch test
[root@localhost my_shell]# cat test 
[root@localhost my_shell]# ll
total 4
-rw-r--r-- 1 root root 175 Nov  6 17:46 del.sh
-rw-r--r-- 1 root root   0 Nov  7 23:33 test
[root@localhost my_shell]# echo "123456" > test
[root@localhost my_shell]# cat test
123456
[root@localhost my_shell]# echo "111111" > test
[root@localhost my_shell]# cat test
111111
[root@localhost my_shell]# echo "123456" >> test
[root@localhost my_shell]# cat test
111111
123456
[root@localhost my_shell]#

关于 "linux命令echo如何使用" 就介绍到此。希望多多支持编程教程

下一章:如何使用Linux命令移动/复制文件/目录到指定目录下

怎么使用Linux命令移动/复制文件/目录到指定目录下:本文讲解"如何使用Linux命令移动/复制文件/目录到指定目录下",希望能够解决相关问题。Linux命令 移动/复制文件/目录到指定目录下1、同一个服务器下复制文件或文件夹1.1 复制 ...