9.输入输出重定向的使用

1.echo命令

功能:在显示器上显示一段文字,一般起到一个提示的作用。

命令格式: echo   [ -n ]  字符串

最简单的用户就是直接在显示器上显示一段字符串,字符串可以加引号,也可以不加引号.

不加引号时,将字符串中的各个单词作为字符串输出(不含特殊字符$、\、 ` 、!),各字符串之间用一个空格分割

[root@linux ~]# echo Today is Monday

Today is Monday 

用单引号时,能完全保证将字符串原样输出,特殊符号不转义

用双引号时,对有些特殊字符不能转义,如:echo  “$PWD”会显示当前目录,而不会显示$PWD

[root@linuxpeng ~]# echo “$PWD”

/root

2.重定向操作符——“>”、“>>”、“<”、“<<”

在Linux系统中

  • 默认的输入设备(标准输入)是键盘
  • 默认的输出设备(标准输出)是屏幕

利用重定向操作符可以重新定义命令涉及的默认的输入和输出设备对象,即重定向操作符可以将命令输入和输出数据流从默认设备重定向到其他位置。

重定向操作符本身不是一条命令,而是命令中附加的可改变命令的输入和输出对象的特殊符号,

“>”、“>>”称为输出重定向操作符,

“<”、“<<”称为输入重定向操作符。

输出重定向符的主要使用形式:

使用形式

功能

命令  >文件

或者:命令   1>文件

将命令执行后的输出信息不在默认的屏幕上显示,而是以覆盖的方式写入到指定文件中,若指定的文件不存在,则自动创建该文件

命令   2>文件

将命令执行后所产生的错误信息不在默认的屏幕上显示,而是以覆盖的方式写入到指定文件中,若指定的文件不存在,则自动创建该文件

命令   &>文件

将命令执行后的输出信息和错误信息不在默认的屏幕上显示,而是以覆盖的方式写入到指定文件中,若指定的文件不存在,则自动创建该文件

命令>>文件

将命令执行后的输出信息以追加的方式写入到指定的文件中

输入重定向符的主要使用形式:

使用形式

功能

命令<文件

使命令从指定的文件中读取输入数据

命令<<结束标识字符串

读取命令行输入,直到遇到输入行为指定的结束标识字符串

命令的输出结果在未使用重定向操作符和使用重定向操作符的对比情况如下:

  • 将字符串‘this is web’显示在屏幕this is web

[root@dyzx ~]# echo  ‘this is web’ 

this is web

  • 将’this is web’写入index.html文件

[root@dyzx ~]# echo  ‘this is web’  >index.html

  • 将index.html文件内容写入f2文件

[root@dyzx ~]# cat  index.html  >f2

  • 将index.html和f2文件内容合并到f3:

[root@dyzx ~]# cat  index.html   f2 >>f3

利用重定向操作符,可以将命令的正确的输出信息和错误的输出信息分别存放到不同的文件,也可以存放到同一个文件。

[root@ dyzx ~]# touch  f11  f22

[root@ dyzx ~]# echo  11111111111 >f11

[root@ dyzx ~]# echo  22222222222 >f22

[root@ dyzx ~]# cat  f11  f22   f10

11111111111

22222222222

cat: f10: 没有那个文件或目录

[root@ dyzx ~]# cat  f11  f22   f10  >f12  2>f00

[root@ dyzx ~]# cat  f12

11111111111

22222222222

[root@ dyzx ~]# cat  f00

cat: f10: 没有那个文件或目录

[root@ dyzx ~]# cat  f11  f22   f10  &>f33

[root@ dyzx ~]# cat  f33

11111111111

22222222222

cat: f10: 没有那个文件或目录

⑵ <、<<输入重定向符

  • 输入重定向操作符的功能是可以让命令从键盘以外的文件得到输入,这样我们可以将输给命令的信息保存到一个文件中,然后将文件作为命令的输入。
  • 读取index.html文件中的内容,并显示输出在屏幕上:

[root@dyzx ~]# cat   <index.html

  • “<<”操作符的使用举例如下:

[root@dyzx ~]# cat  <<end  >f4

>44444444

>end

  • 上述命令执行过程是:从键盘上输入若干行字符,当输入的字符行为“end”时,在回车换行后,其读取动作就会结束,并将读取内容保存到f4文件中。

 

请登录后发表评论

    没有回复内容