Linux 上如何使用带管道的 watch 命令

码农天地 -
Linux 上如何使用带管道的 watch 命令
命令行基础知识 – watch

Linux系统中有几个日志文件。密切关注这些日志文件可能是Linux系统管理员的重要任务之一。您可以使用tail命令轻松查看日志文件的结尾。但是,如果要整天监视该文件,则每隔几分钟输入一次tail命令以检查该日志文件就很麻烦。您可以编写一个带有无限循环的简短脚本来定期检查文件,但事实证明,已经有一个程序可以为您处理重复的任务。

Linux watch命令

Linux中的_watch_命令提供了一种处理重复任务的方法。默认情况下,_watch_将每两秒钟重复一次跟随它的命令。您可以想象,监视是监视日志文件的好工具。这是一个例子。

 watch tail /var/log/syslog

为了停止命令执行,只需使用标准的终止序列[Ctrl] + C即可

使用Linux watch命令监视系统日志

您可以通过发出 -n 开关并指定间隔(以秒为单位)来更改时间间隔。要每10秒检查一次日志文件,请尝试此操作。

 watch -n 10 tail /var/log/syslog
带管道的Linux watch命令

watch 命令不限于查看日志文件。它可以用来重复您提供的任何命令。如果您将系统设置为监视CPU温度,则可以使用 watch 命令通过 sensor 命令查看该温度。

watch -n 1 sensors


我的上网本上的输出如下所示:

acpitz-virtual-0
Adapter: Virtual device
temp1:        +45.0°C  (crit = +100.0°C)

我想过滤此输出以仅显示温度输出,而不显示所有其余部分。

我可以使用此命令查看一次。

sensors | grep temp | awk '{ print $2 }'

请记住,watch 命令将重复看到的第一个命令。将一个命令传递到下一个命令时必须小心。可以通过将命令管道置于引号内来进行管理。

watch -n1 "sensors | grep temp | awk '{ print $2 }'"

在管道上使用Linux watch命令

将 watch 用作时钟

您可能已经注意到, watch 命令在终端窗口的右上角显示了该命令的执行时间。通过传递空的命令行参数,我们可以将 watch 用作简单的时钟。我们可以在引号中包含一个空格以用作空命令。

watch -n 1 " "

因此,您可以看到,这给命令名称 watch 赋予了另一种含义。您可以像手表一样使用它。

现在,您知道了如何使用Linux watch命令。您将使用它来处理哪些重复性任务?

特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

Tags 标签

加个好友,技术交流

1628738909466805.jpg