linux命令管道及重定向
linux命令管道及重定向详细介绍
在 Linux 系统中,管道(|)和重定向(>、>>、<等)是非常实用的操作,它们能让你高效地组合和处理命令。下面为你详细介绍:
管道(
|)
管道用于把一个命令的输出作为另一个命令的输入。基本语法是:
bash
command1 command2
以下是一些示例:
- 统计文件行数:借助
ls列出当前目录下的文件,再用wc -l统计数量。
bash
- 查找包含特定字符串的行:使用
cat读取文件内容,再用grep查找包含example的行。
bash
file.txt example
重定向
输出重定向
- 覆盖写入(
>):把命令的输出覆盖写入到指定文件中。若文件不存在,就会创建该文件;若文件已存在,文件原有内容会被清空。
bash
file_list.txt
- 追加写入(
>>):把命令的输出追加到指定文件的末尾。若文件不存在,就会创建该文件。
bash
file_list.txt
输入重定向(
<)
把文件内容作为命令的输入。比如,使用sort命令对file.txt文件内容进行排序:
bash
file.txt
错误重定向
- 标准错误重定向到文件(
2>):将命令执行过程中的错误信息输出到指定文件。
bash
non_existent_directory > error.log
- 标准输出和标准错误合并重定向(
&>):把标准输出和标准错误信息都重定向到同一个文件。
bash
non_existent_directory existing_directory output.log
综合示例
把grep命令的输出重定向到文件:
bash
large_file.txt important_lines.txt
912 large_file.txt | > important_lines.txt
这些操作可以帮助你灵活地处理命令的输入和输出,提高工作效率。