在linux系统中,大多数命令很简单,很少出现复杂功能的命令,每个命令往往实现一个或者几个功能十分简单的功能,我们可以通过将多个简单的命令组合在一起来完成复杂的功能。
在linux中几乎所有的命令返回的都是纯文本,因为命令都是运行在CLI下的,而纯文本又是命令行的输入格式,这就让命令协作成为可能。命令的组合是通过重定向和管道机制完成的。
命令行的数据流有以下定义:
标准输入说明编号默认
STDIN标准输入0键盘
STDOUT标准输出1终端
STDEER标准错误2终端
通过管道和重定向我们可以控制CLI的数据流。
重定向
>将标准输出重定向到文件中,如果文件不存在,那么创建文件,存在则会覆盖原来的内容。
>>将标准输出重定向到文件中,如果文件不存在,那么创建文件,存在时会将内容追加到文件结尾
2>将标准错误重定向到文件中
2>&1将标准错误和标准输出重定向到文件中去
<重定向标准输入
管道
将第一个命令的标准输出作为下一个命令的标准输出.....