| 会员登录 立即注册

打印 上一主题 下一主题

用 Linux 的 watch 命令观察命令和任务

[复制链接]
跳转到指定楼层
楼主
3AAA 发表于 2021-9-25 08:51:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
楼主
3AAA
2021-9-25 08:51:01 5633 3 看楼主

了解 watch 命令如何让你知道任务已完成或命令已执行。



有很多时候,你需要等待一些事情的完成,比如:
    一个文件的下载。创建或解压一个 tar文件。一个 Ansible作业。

其中一些进程有进度指示,但有时进程是通过一层抽象运行的,衡量进度的唯一方法是通过其副作用。其中一些可能是:
    一个正在下载的文件不断增长。一个从 tarball 中提取的目录被文件填满了。Ansible 作业构建了一个容器。

你可以用这样的命令查询所有这些:
$ ls -l downloaded-file$ find . | wc -l$ podman ps$ docker ps
但是反复运行这些命令,即使是利用 Bash 历史和向上箭头的便利,也是很乏味的。

另一种方法是写一个小的 Bash 脚本来为你自动执行这些命令:
while :do docker ps sleep 2done
但这样的脚本写起来也会很繁琐。你可以写一个小的通用脚本,并将其打包,这样它就可以一直被你使用。幸运的是,其他开源的开发者已经有了这样的经验和做法。

那就是 watch这个命令。

安装 watch


watch命令是procps-ng 包的一部分,所以如果你是在 Linux 上,你已经安装了它。

在 macOS 上,使用 MacPorts或Homebrew安装watch。在 Windows 上,使用Chocolatey。

使用 watch


watch命令定期运行一个命令并显示其输出。它有一些文本终端的特性,所以只有最新的输出才会出现在屏幕上。

最简单的用法是:watch 。

例如,在 docker ps命令前加上watch,就可以这样操作:
$ watch docker ps
用 watch命令,以及一些创造性的 Unix 命令行技巧,可以生成临时的仪表盘。例如,要计算审计事件:
$ watch 'grep audit: /var/log/kern.log |wc -l'
在最后一个例子中,如果有一个可视化的指示,表明审计事件的数量发生了变化,这可能是有用的。如果变化是预期的,但你想让一些东西看起来“不同”,watch --differences就很好用。它可以高亮显示与上次运行的任何差异。如果你在多个文件中搜索,这一点尤其有效,所以你可以很容易地看到哪个文件发生了变化。

如果没有预期的变化,你可以使用 watch --differences=permanent要求它们被“永久”高亮显示,以便知道哪些变化需要调查。这通常是更有用的。

控制频率


最后,有时该命令可能是资源密集型的,不应运行得太频繁。-n参数控制频率。watch默认使用 2 秒间隔,但是watch -n 10可能适合于资源密集型的情况,比如在子目录的任何文件中搜索一个模式:
$ watch -n 10 'find . -type f | xargs grep suspicious-pattern'

用 watch 观察一个命令


watch命令对于许多临时性的系统管理任务非常有用,在这些任务中,你需要在没有进度条的情况下等待一些耗时的步骤,然后再进入下一个步骤。尽管这种情况并不理想,但watch可以使情况稍微好转。它让你有时间为工作做回顾性笔记!"。下载备忘录,让有用的语法和选项触手可及。。

via: https://opensource.com/article/21/9/linux-watch-command

作者:Moshe Zadka选题:lujun9972译者:geekpi校对:wxy

本文由 LCTT原创编译,Linux中国荣誉推出
回复

使用道具 举报

沙发
378Q 发表于 2021-9-25 08:51:59 | 只看该作者
沙发
378Q
2021-9-25 08:51:59 看楼主
转发了
回复 支持 反对

使用道具 举报

板凳
铁富人 发表于 2021-9-25 08:53:26 | 只看该作者
板凳
铁富人
2021-9-25 08:53:26 看楼主
转发了
回复 支持 反对

使用道具 举报

地板
dongfang1230 发表于 2021-9-25 08:54:47 | 只看该作者
地板
dongfang1230
2021-9-25 08:54:47 看楼主
转发了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 返回列表

3AAA 当前离线
白银会员

查看:5633 | 回复:3

关于我们  |   侵权投诉受理  |   联系我们  |   Archiver  |  
免责声明:邳州信息网所有言论只代表发表者个人观点,与本站无关
Copyright © 2009-2025 pzxxw.com 版权所有:邳州金银杏文化传媒有限公司  

苏公网安备 32038202000401号

快速回复 返回顶部 返回列表