考试首页 | 考试用书 | 培训课程 | 模拟考场 | 考试论坛  
  当前位置:Linux认证 > 红帽认证 > 红帽认证辅导 > 文章内容
  

RHCSA学习笔记:如何进行文件和目录管理

 [ 2016年1月26日 ] 【

输入输出重定向以及管道

命令行环境提供了两个非常有用的功能:允许重定向命令的输入和输出为另一个文件,以及发送命令的输出到另一个命令,这分别称为重定向和管道。

为了理解这两个重要概念,我们首先需要理解三个最重要的字符输入输出流类型,以 *nix 的话来说,它们实际上是特殊的文件。

  • 标准输入 (即 stdin),默认连接到键盘。 换句话说,键盘是输入命令到命令行的标准输入设备。
  • 标准输出 (即 stdout),默认连接到屏幕。 找个设备“接受”命令的输出,并展示到屏幕上。
  • 标准错误 (即 stderr),默认是命令的状态消息出现的地方,它也是屏幕。

在下面的例子中,ls /var的结果被发送到stdout(屏幕展示),ls /tecmint 的结果也一样。但在后一种情况下,它显示在标准错误输出上。

Linux input output redirect

输入和输出命令实例

为了更容易识别这些特殊文件,每个文件都被分配有一个文件描述符,这是用于访问它们的抽象标识。主要要理解的是,这些文件就像其它的一样,可以被重定向。这就意味着你可以从一个文件或脚本中捕获输出,并将它传送到另一个文件、命令或脚本中。这样你就可以在磁盘上存储命令的输出结果,用于稍后的分析。

要重定向 stdin (fd 0)、 stdout (fd 1) 或 stderr (fd 2),可以使用如下操作符。

转向操作 效果
> 重定向标准输出到一个文件。如果目标文件存在,内容就会被重写。
>> 添加标准输出到文件尾部。
2> 重定向标准错误输出到一个文件。如果目标文件存在,内容就会被重写。
2>> 添加标准错误输出到文件尾部。
&> 重定向标准错误和标准输出到一个文件。如果目标文件存在,内容就会被重写。
< 使用特定的文件做标准输入。
<> 使用特定的文件做标准输入和标准输出。

与重定向相比,管道是通过在命令后和另外一个命令前之间添加一个竖杠(|)

记得:

  • 重定向是用来定向命令的输出到一个文件,或把一个文件发送作为到一个命令的输入。
  • 管道是用来将命令的输出转发到另一个命令作为其输入。
本文纠错】【告诉好友】【打印此文】【返回顶部
将考试网添加到收藏夹 | 每次上网自动访问考试网 | 复制本页地址,传给QQ/MSN上的好友 | 申请链接 | 意见留言 TOP
关于本站  网站声明  广告服务  联系方式  站内导航  考试论坛
Copyright © 2007-2013 中华考试网(Examw.com) All Rights Reserved