![](/upload/rand_pic/2-243.jpg)
如果您是Linux新手,您可能会犹豫是否使用命令行。当您最终意识到CLI的强大功能时,您会发现它有很多很酷的技巧 包括这个。
尽管我可以将余下的时间都花在Linux上,而不再接触命令行,但我仍然选择使用终端,因为它不仅高效,而且有很多我可以使用的非常方便的技巧。其中一种技巧称为 管道 。
实际上,管道正在获取第一个命令的输出并在下一个命令中使用它。您可以使用任意数量的管道来完成此操作。您可以将命令A的输出通过管道传输到命令B,然后将命令B的输出通过管道传输到命令C,然后将命令C的输出通过管道传输到命令D 等等。
管道从一个命令发送数据以供下一个命令使用,并且它会继续这样做,直到您运行最后一个命令,数据始终从右向左流动。这是一条重要的信息,并且数据管道的流动始终以一种方式进行。
您需要什么:Linux命令行中的管道适用于每个Linux发行版,这意味着您所需要的只是任何Linux发行版的正在运行的实例。
管道命令的语法如下所示:
命令1|命令2|命令3
|的|字符表示管道,bash照此读取它。
让我们首先讨论一下我们将通过管道传输的命令。
1.创建一个新文件
在我们实际讨论管道之前,我将首先演示如何创建一个包含颜色列表的新文件。使用以下命令创建文件:
保存并关闭文件。
2.使用排序命令
我们将使用sort命令按字母顺序列出color.text文件中的内容。
另外:您应该在家使用Linux的最重要原因
我们可以使用以下命令来做到这一点:
对颜色.文本进行排序
输出应如下所示:
黑色的
蓝色的
绿色的
橙子
粉色的
紫色的
红色的
黄色的
我们可以使用 和|的组合,而不是单独运行这些命令。在一行上完成此操作。我已经讨论过如何使用 字符组合Linux命令以获得更高效的体验。我们将在管道命令中使用该技术。
3.使用单个命令创建内容并将其添加到新文件中
首先,我们将创建color.txt文件,并使用两个用 连接在一起的命令添加内容,如下所示:
touchcolor.txt echo-e 橙色\n黄色\n红色\n蓝色\n绿色\n紫色\n黑色\n粉色 颜色
您在上面看到的内容使用-e选项来通知echo命令解释转义序列。在这种情况下,\n转义序列在每种颜色之后创建一个新行。
在此之前,我们使用touch命令创建新文件。因此,创建文件,然后添加内容,一次一行。
4.将所有内容连接在一起
在我们执行任何操作之前,请确保使用命令rmColors.txt删除当前的Colors.txt文件。
我们现在要做的是添加前两个命令,然后通过管道使用cat和sort命令。Cat将文件内容读取到终端,sort将对输出进行排序。总而言之,该命令将如下所示:
touchcolors.txt echo-e 橙色\n黄色\n红色\n蓝色\n绿色\n紫色\n黑色\n粉色 colors.txt catcolor.txt|种类
上述命令的输出应如下所示:
黑色的
蓝色的
绿色的
橙子
粉色的
紫色的
红色的
黄色的
这里要记住的一件事是上述命令中完成的唯一管道是catcolor.txt|排序。catcolor.txt命令的输出被发送到sort命令,该命令显示结果。
这就是管道在Linux命令行中的工作原理。这是一个非常方便的技巧,您可以使用它来提高命令行的工作效率。