📜  Linux/Unix 中的管道和过滤器

📅  最后修改于: 2022-05-13 01:57:34.219000             🧑  作者: Mango

Linux/Unix 中的管道和过滤器

UNIX 中的管道

19726 月MD Mcllory引入了 Pipes 的新想法——版本2,10 次UNIX 安装。管道用于将一个命令(写在 LHS 上)的输出作为另一个命令(写在 RHS 上)的输入。命令使用竖线“ | ”连接在一起 “ 象征。

句法:

command 1|command 2

例子:

  • 输入: ls|more
  • 输出: more 命令从ls命令获取输入并将其附加到标准输出。它显示适合屏幕的尽可能多的文件,并在屏幕底部突出显示更多文件。要查看下一个屏幕,请按 Enter 键或空格键一次移动一行或一次移动一个屏幕。

UNIX 中的过滤器

在 UNIX/Linux 中,过滤器是从标准输入流(即stdin )获取输入、执行某些操作并将输出写入标准输出流(即stdout )的一组命令。可以使用重定向和管道根据首选项管理标准输入和标准输出。常用的过滤命令有:grep、more、sort。

1. grep 命令:是模式或表达式匹配命令。它搜索文件或目录中匹配的模式或正则表达式,然后打印找到的匹配项。



句法:

$grep[options] "pattern to be matched" filename 

例子:

Input : $grep 'hello' ist_file.txt
Output : searches hello in the ist_file.txt and outputs/returns the lines containing 'hello'.

grep-命令-linux

grep 命令中的选项是:

Grep 命令也可以与元字符一起使用

例子:

Input : $grep 'hello' *
Output : it searches for hello in all the files and directories.

*是元字符并返回匹配的 0 个或多个前面的字符



2. sort 命令:按指定字段对文件中的行进行排序或合并的数据操作命令。换句话说,它按字母顺序或数字顺序对文本行进行排序,默认排序是字母顺序

句法:

$sort[options] filename

选项包括:

例子:

$sort fruits.txt
$sort -n grades.txt

排序命令-linux

3. more 命令:用于自定义文件的显示内容。它使用分页控件在终端上显示文本文件内容。使用以下关键控件:

  • 要显示下一行,请按回车键
  • 要调出下一个屏幕,请按空格键
  • 要移动到下一个文件,请按 n
  • 要退出,请按 q。

句法:

$more[options] filename

例子:

cat fruits.txt | more

more-command-linux

使用 more 命令时,屏幕底部包含更多提示,其中输入命令以在文本中移动。