在本指南中,我们将使用易于理解的示例讨论 watch 命令的一些基本功能。
Linux 中的watch命令用于定期运行其他命令,然后在终端中显示输出。以下是如何使用它!
有时,在使用 Linux 命令行时,您可能希望重复执行命令以跟踪输出中的任何变化。幸运的是,有一个命令行实用程序可以让您执行此操作。
使用 Linuxwatch命令,您可以不时跟踪输出的变化。它有利于反映操作系统上正在发生的事件的实时视图。
该watch命令默认安装在几乎所有Linux 发行版上。当您需要监视命令输出随时间的变化时,它很有用。因此,您可以密切关注变化,而不是阅读整个输出。
如何在 Linux 中使用 watch 命令
该 watch 命令的语法如下:
- watch [OPTIONS] COMMAND
解释下:
- [OPTIONS]: 添加一个选项改变 watch 命令的行为方式。
- [COMMAND]:要重复运行的用户定义命令。
默认情况下,指定的命令将每 2 秒运行一次,而且watch一直运行到被用户中断(按 Ctrl+C)。
例如,我们可以 date 每两秒监控一次命令的输出:
- linuxmi@linuxmi:~/www.linuxmi.com$ watch date
结果,该 watch 命令将暂时清除所有终端内容并开始定期运行提供的命令。在屏幕标题的左上角,您可以看到更新间隔和执行的命令。
如何更改时间间隔
我们知道,默认情况下,该命令每 2 秒运行一次。如果我们将 -n ( --interval) 选项传递给 watch 命令,我们可以指定更新间隔。您需要以秒为单位指定时间量。
我将继续以 date 命令为例。以下命令将每秒运行date 一次。
- linuxmi@linuxmi:~/www.linuxmi.com$ watch -n 1 date
高亮差异
如果您正在运行一个打印出大量输出的命令,那么密切关注更改可能会变得非常麻烦。幸运的是,该watch命令可以突出显示上一个输出与当前输出之间的差异。
要查看变化的输出,我们可以使用 -d ( --difference) 选项。此选项将高亮显示更改。
- linuxmi@linuxmi:~/www.linuxmi.com$ watch -n 1 -d date
如下gif动图:
但是,如果更新之间的间隔非常短,例如-n 0.1,审查差异将具有挑战性。因此,您必须设置合理的更新间隔。
在输出中隐藏标题
( -t)--no-titile选项用于关闭在显示屏顶部显示时间间隔、命令和当前时间的标题,如果您不想看到这部分内容。
- linuxmi@linuxmi:~/www.linuxmi.com$ watch -t date
发生变化时退出
默认情况下,watch 命令会一直运行,直到被用户手动中断(Ctrl+C)。但是,有时您宁愿 watch 在检测到更改时完全退出,而不是高亮显示更改。
您可以 使用 -g (--chgexit) 选项设置watch 在命令的输出更改时退出 。
- linuxmi@linuxmi:~/www.linuxmi.com$ watch -g date
watch上面的示例在输出发生变化时停止命令date,在上面的命令下意味着 2 秒后退出。
错误提示音
如果更新失败,该watch命令还可以发出哔声。beep如果输出更新由于错误而失败,它会使用该包播放声音警报。
- linuxmi@linuxmi:~/www.linuxmi.com$ watch -b incorrect-command
结论
现在您已经了解 watch Linux 上的命令了。虽然它是一个简单的程序,但如果使用得当,它会非常有用。
watch 在其命令行 手册页中了解有关各种选项的更多信息 。