当前位置:首页>Linux>【运维相关】linux管道和重定向命令详解

【运维相关】linux管道和重定向命令详解

  • 2026-09-08 02:14:17
【运维相关】linux管道和重定向命令详解
Linux 管道(|) 和 重定向(>/>>/</<<) 是实现输入输出流控制的核心工具,用于连接命令、重定向文件读写,极大提升命令行操作效率。
1.管道(|)命令

管道的作用是将前一个命令输出作为后一个命令的输入,实现多个命令的 “串联执行”。

示例:

# 1. 查看当前目录下文件数量ls -l | wc -l# 2. 查找包含 "root" 的进程并按 CPU 排序ps aux | grep "root" | sort -k 3 -r

特点:

  • 单向性:数据只能从左往右流动

  • 实时性:前一个命令产生数据后,后一个命令立即处理

  • 组合:可以串联多个命令,形成管道线

  • 过滤器:通常与 grep, sort, sed等命令配合使用

2.重定向(>, >>, <, 2>, &>)

Linux 默认的数据流:

  • 0 (stdin):标准输入,默认从键盘读取。

  • 1 (stdout):标准输出,默认打印到屏幕。

  • 2 (stderr):标准错误,用于输出错误信息。

重定向的作用是改变命令的默认输入 / 输出目标。

1)标准输出覆盖重定向 (>)

将命令输出写入指定文件,覆盖文件原有内容。

语法:command > file

# 将 ls 结果覆盖写入 file_list.txtls -l > file_list.txt

2)标准输出追加重定向 (>>)

将命令输出追加到指定文件末尾,不覆盖原有内容。

语法:command >> file

# 将当前日期追加到 log.txt 末尾date >> log.txt

3)输入重定向 (<)

让命令从指定文件输入,而非键盘输入。

语法:command < file

# 从 file.txt 读取内容作为 cat 的输入cat < file.txt

4)标准错误重定向 (2>)

将命令错误信息单独重定向到文件,避免干扰正常输出。

语法:command 2> error_file

# 正常输出到 output.log,错误输出到 error.logcommand > output.log 2error.log

5)标准输出和错误同时重定向,合并重定向到同一文件(&>)

语法:command &> all.log
# &> 等价于 1> file 2>&1command &> all.log

往期回顾:
【运维相关】linux标准分区和lvm分区的区别
【运维相关】linux添加开机启动项
g4l如何备份还原linux
如何快速安装一个干净的最新win11及备份故障恢复过程演示
系统重装如何分区和你一次说清
常用系统备份及安装工具比较

最新文章

随机文章