
Linux `>`/`>>` 重定向操作符深度解析与高阶应用指南
- 一、核心功能解析
-
- 二、高阶重定向技巧
- 1. 多流重定向
- 2. 文件描述符操作
- 3. 特殊设备操作
- 三、企业级应用场景
- 1. 日志管理系统
- 2. 数据管道处理
- 3. 自动化运维
- 四、安全与权限管理
-
- 五、高级技巧与工具
- 1. 进程替换(Process Substitution)
- 2. 网络重定向
- 3. 内存文件系统
- 六、故障排查与调试
-
- 七、性能优化策略
-
一、核心功能解析
1. 基础重定向
操作符 | 功能说明 | 示例 |
---|
> | 覆盖写入(创建或截断文件) | echo "new" > file |
>> | 追加写入(创建或追加文件) | echo "append" >> file |
2. 标准流描述符
描述符 | 名称 | 默认连接 | 文件描述符 |
---|
0 | stdin | 键盘 | /dev/stdin |
1 | stdout | 屏幕 | /dev/stdout |
2 | stderr | 屏幕 | /dev/stderr |
二、高阶重定向技巧
1. 多流重定向
同时重定向stdout和stderr到文件
command > output.log 2>&1分离输出流(标准输出和错误输出到不同文件)
command > stdout.log 2> stderr.log追加模式合并错误流
command >> combined.log 2>&1
2. 文件描述符操作
自定义文件描述符
exec 3> custom_fd.log
echo "test" >&3
exec 3>&-同时写入多个目标
echo "data" | tee file1 > file2
3. 特殊设备操作
丢弃输出(黑洞设备)
command > /dev/null实时监控写入
tail -f access.log | grep &