Bootstrap

Linux 入门篇 —— 重定向与管道符

重定向与管道符

重定向

  • 作用: 将命令的执行结果输出到指定的文件中,而不是直接显示在屏幕上

- 0 标准输入 键盘 stdin 仅读取

  • 1 标准输出 终端 stdout 仅写入

  • 2 标准错误 终端 stderr 仅写入

  • 3+ filename 其他文件 读/写

在Linux中构建了一个带有编号标记的通道(文件米描述符)的进程来管理打开文件

通过进程连接到文件,进行文件数据的操作

  • 重定向标准输出

- 1>(1可省略)

- 将命令的执行结果输出到指定文件中,而不是显示在屏幕上,覆盖写

- history > history.txt

- find / -user ruochen > history.txt

- 1>>(1可省略)

- 标准输出,追加写

- ls >> history.txt

  • 重定向标准错误输出

- 2>

- 将标准错误信息保存到指定文件中,进行覆盖写

- find / -user ruochen 2> error.txt

- 2>>

- 将标准错误信息保存到指定文件中,进行追加写

- find / -user ruochen 2>> error.txt

- find / -user ruochen > true.txt 2> false.txt

  • 重定向标砖输出和标准错误输出

- &> 覆盖写

- &>> 追加写

- 将标准输出和标准错误全部保存到指定文件中

- find / -user ruochen &> a.txt

- find / -user ruochen &>> a.txt

>find / -user ruochen >> true.txt 2> /dev/null

管道: 传送

  • 标识符号 |

  • 就是将管道前面的输出结果作为后面语句的条件执行

  • 格式

- 语句1 | 语句2 | .... 语句n

  • 案例

- ls -l /usr/bin | more

- ls | wc -l > /tmp/rootdir

- ls -t | head -n 10 > /tmp/rootdir

- find / -name root | find -size +10k | find -size +100k