阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

watch:定期重复Linux / Unix命令

136次阅读
没有评论

共计 1687 个字符,预计需要花费 5 分钟才能阅读完成。

服务器管理员需要维护系统并保持更新和安全。每天需要运行大量的指令。有些系统进程会记录日志。这些日志不断更新。为了检查这些更新,需要重复地执行命令。比如,为了读取一个日志文件需要使用 head、tail、cat 等命令。这些命令需要重复地执行。而 watch 命令可以用于定期地执行一个命令。

watch:定期重复 Linux / Unix 命令

 

Watch 命令

watch 是一个简单的命令,只有几个选项。watch 命令的基本语法是:

  1. watch [-dhvt][-n <seconds>][--differences[=cumulative]][--help][--interval=<seconds>][--no-title][--version]<command>

watch 命令默认每隔 2 秒执行后面参数给出的命令。这个时间根据的是命令执行结束到上次执行的间隔来算的。比如,watch 命令可以用于监测日志更新,更新是在文件的后面追加新的内容,因此可以用 tail 命令来检测文件的更新(LCTT 译注:可以直接使用 tail -f 主动跟踪某个文件的更新,而不用使用 watch。)。这个命令会持续地运行直到你按下 CTRL + C 回到提示符。

 

例子

每两秒监测 errors/notices/warning 生成的情况。

  1. watch tail /var/log/messages

watch:定期重复 Linux / Unix 命令

tail messages

按指定的时间间隔监测磁盘的使用率。

  1. watch df -h

watch:定期重复 Linux / Unix 命令

df -h

对磁盘管理员而言,关注高 I / O 等待导致的磁盘操作尤其是 mysql 事务是很重要的。

  1. watch mysqladmin processlist

watch:定期重复 Linux / Unix 命令

processlist

监测服务器负载和运行时间。

  1. watch uptime

watch:定期重复 Linux / Unix 命令

uptime

监测 exim 给用户发送通知的队列大小。

  1. watch exim -bpc

watch:定期重复 Linux / Unix 命令

exim -bpc

 

1) 指定延迟

  1. watch [-n <seconds>]<command>

命令默认运行的时间间隔可用 - n 改变,下面的命令会在 5 秒后运行后面的命令:

  1. watch -n 5 date

watch:定期重复 Linux / Unix 命令

date 5 seconds

 

2) 连续输出比较

如果你使用 - d 选项,它会累次地高亮第一次和下一次命令之间输出的差别。

  1. watch [-d or--differences[=cumulative]]<command>

例子 1,用下面的命令连续地输出时间并观察高亮出来的不同部分。

  1. watch -n 15-d date

第一次执行 date 的输出会被记录,15 秒后会重复运行命令。

watch:定期重复 Linux / Unix 命令

Difference A

在下一次执行时,可以看到输出除了被高亮的秒数从 14 到 29 之外其他的都一样。

watch:定期重复 Linux / Unix 命令

Difference A

例子 2,让我们来体验一下两个连续的“uptime”命令输出的不同。

  1. watch -n 20-d uptime

watch:定期重复 Linux / Unix 命令

uptime

现在列出了时间和 3 个负载快照之间的不同。

watch:定期重复 Linux / Unix 命令

10b

 

3) 不带标题输出

如果你不希望显示更多关于延迟和实际命令的信息可以使用 - t 选项。

  1. watch [-t |--no-title]<command>

让我们看下下面例子命令的输出:

  1. watch -t date

watch:定期重复 Linux / Unix 命令

watch without title

 

Watch 帮助

可以在 ssh 中输入下面的命令来得到 watch 的简要帮助。

  1. watch -h [--help]

watch:定期重复 Linux / Unix 命令

watch help

 

Watch 版本

在 ssh 终端中运行下面的命令来检查 watch 的版本。

  1. watch -v [--version]

watch:定期重复 Linux / Unix 命令

version

不足

不幸的是,在终端大小调整时,屏幕不能在下次运行前重画。所有用 –difference 高亮的内容也会在更新时丢失。

 

总结

watch 对系统管理员而言是一个非常强大的工具,因为它可以用于监控、日志、运维、性能和系统运行时的吞吐量。人们可以非常简单地格式化和推延 watch 的输出。任何 Linux 命令 / 程序或脚本可以按照所需监测和连续输出。


via: http://linoxide.com/linux-command/linux-watch-command/

作者:Aun Raza 译者:geekpi 校对:wxy

本文由 LCTT 原创翻译,Linux 中国 荣誉推出

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-07/119528.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-20发表,共计1687字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中