Linux多命令协作:管道及重定向

来源:互联网 发布:金属软件 编辑:程序博客网 时间:2024/05/29 14:17


 

本课程将为您讲解Linux下通过管道及重定向方式实现多命令协作,以处理复杂任务


开源文化
开源文化的核心理念之一就是不要重复发明轮子,很多开源软件都大量使用了其他开源软件或功能组建,同样,Linux中的命令也往往只实现某个特定的、单一的功能,复杂功能往往都是通过多命令协作完成的


管道及重定向
管道及重定向就是Linux多命令协作的基础机制
Linux系统中,多数命令都很简单,我们可以通过不同功能的命令组合在一起使用,达到完成某个复杂功能的目的。

Linux中,几乎所有的命令的返回数据都是纯文本的,纯文本格式又是绝大多数命令的输入格式,这让多命令协作成为可能。

Linux的命令行:为我们提供了管道和重定向机制。

Linux的Shell对数据流进行以下分类定义:
stdin     标准输入  编号为:0   默认:键盘
stdout    标准输出  编号为:1   默认:终端
stderr    标准错误  编号为:2   默认:终端


重定向用来控制终端数据流:
>  将标准输出以覆盖形式重定向到指定文件,如:ls > outfile
>> 将标准输出以追加形式重定向到指定文件,如:ls >> outfile
<  重定向标准输入,如:grep linuxcast < /etc/passwd
2> 重定向标准错误
2>&1 将标准错误合并到标准输出中


管道
管道“|”用以将一个命令的标准输出作为另一个命令的标准输入:
命令1  |  命令2
ls -l | grep out


管道通常用来组合不同命令
重定向通常用来保存输出信息

 

 

原创粉丝点击