
Linux `>`/`>>` 重定向操作符深度解析与高阶应用指南
一、核心功能解析
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 &