博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
watch解放你的双手
阅读量:5135 次
发布时间:2019-06-13

本文共 2054 字,大约阅读时间需要 6 分钟。

有时候我们需要重复执行某个命令,观察某个文件和某个结果的变化情况。可以写脚本去实现这些需求,但是有更简单的方法,本文档要介绍的就是watch命令。
1. 以固定时间反复执行某个命令
root@jaking-virtual-machine:~# watch -n 1 cat hello.txt Every 1.0s: cat hello.txt                                                                    jaking-virtual-machine: Tue Mar 19 19:13:33 2019Hello World!Hello Jaking!
2. 高亮变化内容
root@jaking-virtual-machine:~# watch -d uptime   #为了突出变化部分,可以使用 -d(difference)参数。Every 2.0s: uptime                                                                           jaking-virtual-machine: Tue Mar 19 19:14:01 2019 19:14:01 up 3 days, 12:53,  2 users,  load average: 0.01, 0.01, 0.00(这里省略,变化内容会高亮,非常便于观察)
3. 执行出错时退出
root@jaking-virtual-machine:~# watch -n 1 -e cat hello.txt    #运行某个命令,当退出码不是0时,即命令执行出错时就结束,可以使用 -e(errexit)参数。Every 1.0s: cat hello.txt                                                                  jaking-virtual-machine: Tue Mar 19 19:16:49 2019

打开另一个终端,执行mv操作,可以看到效果:

root@jaking-virtual-machine:~# mv hello.txt /tmp#新终端root@jaking-virtual-machine:~# watch -n 1 -e cat hello.txt #旧终端Every 1.0s: cat hello.txt                                                                  jaking-virtual-machine: Tue Mar 19 19:16:49 2019cat: hello.txt: No such file or directory
4. 执行结果变化时退出
root@jaking-virtual-machine:~# watch -n 1 -g 'du -b hello.txt'                                                                            Every 1.0s: du -b hello.txt                                                                jaking-virtual-machine: Tue Mar 19 19:23:41 201927      hello.txt

打开另一个终端执行echo操作,可以看到效果:

root@jaking-virtual-machine:~# echo "watch -n -l -g command" >> hello.txt #新终端root@jaking-virtual-machine:~# watch -n 1 -g 'du -b hello.txt'  #旧终端                                                                          Every 1.0s: du -b hello.txt                                                                jaking-virtual-machine: Tue Mar 19 19:21:55 201950      hello.txt#此时watch -n 1 -g 'du -b hello.txt'运行结束root@jaking-virtual-machine:~#

转载于:https://www.cnblogs.com/linuxprobe-sarah/p/10619321.html

你可能感兴趣的文章
Android 画图之 Matrix(一)
查看>>
【模板】最小生成树
查看>>
设计模式之结构型模式
查看>>
使用pygal_maps_world.i18n中数据画各大洲地图
查看>>
jQuery EasyUI 的下拉选择combobox后台动态赋值
查看>>
timeline时间轴进度“群英荟萃”
查看>>
python if else elif statement
查看>>
网络编程
查看>>
文本隐藏(图片代替文字)
查看>>
java面试题
查看>>
提高码力专题(未完待续)
查看>>
pair的例子
查看>>
前端框架性能对比
查看>>
uva 387 A Puzzling Problem (回溯)
查看>>
12.2日常
查看>>
同步代码时忽略maven项目 target目录
查看>>
Oracle中包的创建
查看>>
团队开发之个人博客八(4月27)
查看>>
发布功能完成
查看>>
【原】小程序常见问题整理
查看>>