重定向与管道符
重定向
- 作用: 将命令的执行结果输出到指定的文件中,而不是直接显示在屏幕上
- 0 标准输入 键盘 stdin 仅读取
- 1 标准输出 终端 stdout 仅写入
- 2 标准错误 终端 stderr 仅写入
- 3+ filename 其他文件 读/写
在Linux中构建了一个带有编号标记的通道(文件米描述符)的进程来管理打开文件 通过进程连接到文件,进行文件数据的操作
- 重定向标准输出
- 1>(1可省略)
- 将命令的执行结果输出到指定文件中,而不是显示在屏幕上,覆盖写
- history > history.txt
- find / -user ruochen > history.txt
- 1>>(1可省略)
- 标准输出,追加写
- ls >> history.txt
- 1>(1可省略)
- 重定向标准错误输出
- 2>
- 将标准错误信息保存到指定文件中,进行覆盖写
- find / -user ruochen 2> error.txt
- 2>>
- 将标准错误信息保存到指定文件中,进行追加写
- find / -user ruochen 2>> error.txt
- 2>
- 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