Linux Watch 命令

2025年3月17日 | 阅读 3 分钟

Linux 中,我们使用 watch 命令以固定时间间隔执行程序,并在全屏显示输出。Watch 命令可以不断地运行参数中指定的命令,并显示其输出和错误。默认情况下,每隔 2 秒,指定的命令就会运行一次,并且 watch 命令会一直运行直到被中断。

如果我们需要持续执行命令并定期查看命令输出的变化,watch 命令会很有用。例如,watch 命令可用于监控系统正常运行时间和磁盘使用情况。Watch 命令预装在几乎所有 Linux 发行版中,并且是 **_procps_** 软件包的一部分。

如何使用 Watch 命令

如果我们要使用 watch 命令,那么我们必须遵循以下语法

为了理解 watch 命令如何操作,我们运行 date 命令


Linux Watch Command

在上图中,我们可以看到 watch 命令会暂时删除所有终端内容,并开始定期运行给定命令。如果我们在没有选项的情况下使用,那么 watch 将每两秒运行一次指定的命令。

我们可以在屏幕标题的左上方看到 **_watch_** 更新间隔和已执行的命令,即 **_every 2.0s: date_**,而左上方的 **_watch_** 时钟显示当前的日期和时间。如果我们需要停止使用标题,我们必须使用选项 **_-t (--no-title)_**。

指定命令的输出显示在屏幕上,并每两秒重复更新一次。

如果我们要退出 **_watch_** 命令,我们必须按 **_Ctrl+C_** 键。

选项

  • -d, --differences

我们使用此选项来突出显示两次连续更新之间的修改。-d, --difference 选项读取备用参数,该参数使修改永久化,允许用户在第一次迭代后稍微看到已修改的内容。

示例


Linux Watch Command
  • -n, --interval 秒

我们使用此选项来确定更新间隔。此命令不允许快于 0.1 秒的间隔,较小的值会被更改。

示例


Linux Watch Command
  • -p, --precise

使用此选项,watch 尝试每隔一段时间运行命令。

示例


Linux Watch Command
  • -t, --no-title

借助此选项,可以关闭标题,该标题显示命令、当前时间和屏幕顶部的间隔。

Linux Watch Command
  • -b, --beep

如果命令的退出代码非零,则此选项将发出蜂鸣声。

示例


Linux Watch Command
  • -e, --errexit

-e, --errexit 选项在命令错误时冻结更新,然后在按下任意键后退出。


Linux Watch Command
  • -g, --chgexit

-g, --chgexit 选项在命令输出退出时退出。

  • -c, --color

-c, --color 选项解释样式序列和 ANSI 颜色。

  • -x, --exec

此选项给定给 **_sh -c_**,这意味着我们可能需要使用额外的引号才能获得所需的效果。

  • Watch -h

watch -h 选项用于显示帮助消息并退出。

示例


Linux Watch Command
  • Watch -v

watch -v 选项将显示版本信息并退出。

示例