Linux/Unix 中的管道、Grep 和排序命令及其示例
Linux 中的管道是什么?
管道是 Linux 中的一个命令,它允许您使用两个或多个命令,以便一个命令的输出作为下一个命令的输入。 简而言之,每个进程的输出直接作为输入到下一个进程就像一个管道。 符号“|” 表示管道。
管道可帮助您同时混合两个或多个命令并连续运行它们。您可以使用功能强大的命令在短时间内执行复杂的任务。
让我们通过一个例子来理解这一点。
当您使用“cat”命令查看跨越多页的文件时,提示符会快速跳转到文件的最后一页,而您看不到中间的内容。
为了避免这种情况,您可以将“cat”命令的输出通过管道传输到“less”,它将一次只显示一个滚动长度的内容。
cat filename | less
举个例子就可清楚说明。
点击 请点击此处 如果视频无法访问
‘pg’ 和 ‘more’ 命令
除了‘less’,您还可以使用。
cat Filename | pg
or
cat Filename | more
而且,您可以以易于理解的位来查看文件,只需按回车键即可向下滚动。
‘grep’ 命令
假设您想从文本文件中搜索邮政编码的特定信息。
您可以自己手动浏览内容以追踪信息。更好的选择是使用 grep 命令。它将扫描文档以查找所需信息并以您想要的格式呈现结果。
语法:
grep search_string
让我们看看它的实际效果——
在这里, grep的 命令在文件‘sample’中搜索字符串‘Apple’和‘Eat’。
此命令可使用以下选项。
| 附加选项 | 功能 |
|---|---|
| -v | 显示所有与搜索字符串不匹配的行 |
| -c | 仅显示匹配行数 |
| -n | 显示匹配的行及其编号 |
| -i | 匹配大小写 |
| -l | 仅显示带有字符串的文件名称 |
让我们尝试第一个选项 '-我' 在同一个文件上使用上面的方法 –
使用 'i' 选项 grep 从所有行中过滤掉字符串 'a'(不区分大小写)。
‘sort’ 命令
此命令有助于 按字母顺序对文件内容进行排序。
此命令的语法是:
sort Filename
考虑一个文件的内容。
使用排序命令
这里有 扩展 此命令也是如此,它们列在下面。
| 附加选项 | 功能 |
|---|---|
| -r | Rev逆序排序 |
| -n | 按数字排序 |
| -f | 不区分大小写的排序 |
下面的例子显示对文件‘abc’中的内容进行反向排序。
什么是过滤器?
Linux 有很多过滤命令,例如 awk、grep、sed、spell 和 wc。过滤器会从某个命令获取输入,进行一些处理,然后给出输出。
当您通过管道传输两个命令时,第一个命令的“过滤”输出将提供给下一个命令。
让我们借助一个例子来理解这一点。
我们有以下文件“示例”
我们想强调 仅包含不包含字符“a”的行,但结果应该是相反的顺序。
为此,可以使用以下语法。
cat sample | grep -v a | sort - r
让我们看看结果。
概要:
- 管道“|”将一个命令的输出作为另一个命令的输入。
- 过滤器从一个命令获取输入,进行一些处理,然后给出输出。
- grep 命令可用于查找文本文档中的字符串和值
- 通过 grep 进行管道传输是最常见的用途之一
- ‘sort’ 命令按字母顺序对文件内容进行排序
- less、pg 和 more 命令用于将长文件分成可读的位







.png)
.png)

