Linux 中的 yes 命令及示例 - Linux 命令行教程
Linux 中的 yes 命令会自动重复输出“y”或您指定的任何字符串。这是 Linux 上最简单的命令之一,大多数用户会发现他们从来没有太多用处。但当你确实需要它时,你会庆幸你的 Linux 系统已经默认包含了这个 Linux 命令。
yes 命令的经典用途是对提出验证问题的终端提示自动回答“y”或“yes”。例如,当您通过命令行安装软件包时,软件包管理器会询问“继续安装吗?”并且您必须给出答复才能继续。如今,许多命令已经有了自己的选项,用户可以指定这些选项以避免弹出提示,因此 yes 不再像以前那样方便。
在需要自动化、避免人工交互的 Bash 脚本和任务中,是仍然非常有用。它还可以用作快速用虚拟文本填充文件或将系统 CPU 使用率提高到 100% 的工具 - 换句话说,您只需要测试某些内容的场景类型。
在本指南中,您将通过示例了解如何在 Linux 中使用 yes 命令。请按照下面的说明查看此命令在某些 Linux 管理任务中是否有用。
在本教程中您将学习:
如何在 Linux 上使用 yes 命令
常用选项
yes 命令将重复输出“y”或我们指定的其他字符串。看一下下面的一些示例,了解 Linux 中的 yes 命令实际上是如何工作的。
Linux 基础和高级示例中的 Yes 命令
单独运行 yes 命令并不是很有用。该命令将尽可能快地输出“y”,或者更确切地说,以您的 CPU 允许的最快速度输出“y”。
$ yes
其唯一的实际应用是快速将 CPU 的使用率提高到 100%,这对于压力测试很有好处。该命令将继续运行,直到您使用
Ctrl + C
键盘组合来停止它。假设我们有五个文件需要删除。当提示我们是否确实要删除每个文件时,我们可以使用yes命令来肯定地回答。
$ yes | rm -i file* rm: remove regular empty file 'file1'? rm: remove regular empty file 'file2'? rm: remove regular empty file 'file3'? rm: remove regular empty file 'file4'? rm: remove regular empty file 'file5'?
默认情况下,Linux 中的 yes 命令将继续打印“y”字符。但您可以使用该命令打印任何内容。如果您需要对每个提示都回答“否”,则只需将该字符串传递给是。
$ yes no | rm -i file*
您甚至可以将它用于更大的字符串,例如整个句子。
$ yes this is just a random sentence!
请记住,您还可以将输出发送到您想要的任何文件。这可能有利于创建一个充满文本的虚拟文件,然后可以将其用于其他场景中的测试目的。
$ yes this is just a random sentence! > file.txt
注意
您始终可以使用 man 命令来阅读有关 yes 命令及其官方文档的更多信息。单击上一个链接可查看如何打开 Linux 系统上任何命令的手册页。
结束语
在本指南中,我们了解了有关 Linux 上的 yes 命令的所有信息。 yes 的最大用途是自动回答大量终端提示。您还可能会发现其他派上用场的利基场景,例如我们在此介绍的一些示例。