社区编辑申请
注册/登录
Linux教程系列:Linux 中的 Watch 命令示例
系统 Linux
Linux 中的watch命令用于定期运行其他命令,然后在终端中显示输出。以下是如何使用它!

 在本指南中,我们将使用易于理解的示例讨论 watch 命令的一些基本功能。

Linux 中的watch命令用于定期运行其他命令,然后在终端中显示输出。以下是如何使用它!

有时,在使用 Linux 命令行时,您可能希望重复执行命令以跟踪输出中的任何变化。幸运的是,有一个命令行实用程序可以让您执行此操作。

使用 Linuxwatch命令,您可以不时跟踪输出的变化。它有利于反映操作系统上正在发生的事件的实时视图。

该watch命令默认安装在几乎所有Linux 发行版上。当您需要监视命令输出随时间的变化时,它很有用。因此,您可以密切关注变化,而不是阅读整个输出。

如何在 Linux 中使用 watch 命令

该 watch 命令的语法如下:

  1. watch [OPTIONS] COMMAND 

解释下:

  •  [OPTIONS]: 添加一个选项改变 watch 命令的行为方式。
  •  [COMMAND]:要重复运行的用户定义命令。

默认情况下,指定的命令将每 2 秒运行一次,而且watch一直运行到被用户中断(按 Ctrl+C)。

例如,我们可以 date 每两秒监控一次命令的输出: 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ watch date 

结果,该 watch 命令将暂时清除所有终端内容并开始定期运行提供的命令。在屏幕标题的左上角,您可以看到更新间隔和执行的命令。

如何更改时间间隔

我们知道,默认情况下,该命令每 2 秒运行一次。如果我们将 -n ( --interval) 选项传递给 watch 命令,我们可以指定更新间隔。您需要以秒为单位指定时间量。

我将继续以 date 命令为例。以下命令将每秒运行date 一次。 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ watch -n 1 date 

高亮差异

如果您正在运行一个打印出大量输出的命令,那么密切关注更改可能会变得非常麻烦。幸运的是,该watch命令可以突出显示上一个输出与当前输出之间的差异。

要查看变化的输出,我们可以使用 -d ( --difference) 选项。此选项将高亮显示更改。 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ watch -n 1 -d date 

如下gif动图:

但是,如果更新之间的间隔非常短,例如-n 0.1,审查差异将具有挑战性。因此,您必须设置合理的更新间隔。

在输出中隐藏标题

( -t)--no-titile选项用于关闭在显示屏顶部显示时间间隔、命令和当前时间的标题,如果您不想看到这部分内容。 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ watch -t date 

发生变化时退出

默认情况下,watch 命令会一直运行,直到被用户手动中断(Ctrl+C)。但是,有时您宁愿 watch 在检测到更改时完全退出,而不是高亮显示更改。

您可以 使用 -g (--chgexit) 选项设置watch 在命令的输出更改时退出 。 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ watch -g date 

watch上面的示例在输出发生变化时停止命令date,在上面的命令下意味着 2 秒后退出。

错误提示音

如果更新失败,该watch命令还可以发出哔声。beep如果输出更新由于错误而失败,它会使用该包播放声音警报。 

  1. linuxmi@linuxmi:~/www.linuxmi.com$ watch -b incorrect-command 

结论

现在您已经了解 watch Linux 上的命令了。虽然它是一个简单的程序,但如果使用得当,它会非常有用。

watch 在其命令行 手册页中了解有关各种选项的更多信息 。 

 

责任编辑:庞桂玉 来源: Linux公社
相关推荐

2022-04-02 20:45:04

Hi3516开发板操作系统鸿蒙

2022-04-15 14:31:02

鸿蒙操作系统

2022-04-14 10:10:59

Nginx开源Linux

2022-05-18 10:58:36

LinuxKali Linux

2022-05-07 11:08:50

Linuxapt 命令

2022-05-16 13:37:12

Sysrv僵尸网络微软

2022-05-09 07:08:14

LinuxBashShell

2022-04-24 16:00:15

LinuxLinux命令ls命令

2022-04-20 10:43:24

Linux命令

2022-04-25 08:45:38

Linux 发行版旧计算机PC

2022-03-25 09:39:50

LinuxLinux top

2022-05-17 09:19:17

XebianLinuxLinux 发行版

2022-05-14 08:05:18

Linux内存管理

2022-04-28 09:46:20

Nginx文件Linux

2022-03-21 09:52:44

LinuxSystemd日志

2022-04-06 06:35:58

进程命令CPU

2022-03-30 09:32:32

BashtestLinux

2022-05-17 09:14:50

聚类算法python

2022-05-13 10:24:44

WineWindowsLinux

2022-04-23 16:30:22

Linux磁盘性能

同话题下的热门内容

Fedora 36 通过桌面大修吸引开发者,但它能取悦 Linux 之父吗?万字多图,搞懂 Nginx 高性能网络工作原理!43个Bash编程最容易犯的错误大全Kali Linux 2022.2 发布:增加了一个吓唬人的有趣新功能Linux程序编译过程详解程序员必备高级技术之函数调用栈轻量级 Kubernetes 集群发行版 K3s 完全进阶指南微软内部 Linux 第二个稳定版发布

编辑推荐

Linux系统下安装MySQL的步骤详解CentOS与Ubuntu有什么不同?Linux下如何使用minicom USB串口为什么你可能想要略过Ubuntu 17.04?Linux中7个判断文件系统类型的方法
我收藏的内容
点赞
收藏

51CTO技术栈公众号