在Linux系统中,命令watch可以说是见名知意,是用于动态查看程序或命令的执行情况,其实所谓的动态就是周期性的执行被监视的命令,其功能有点类似于tail -f命令,有关tail命令信息可以参看 每天一条Linux命令(8) tail (超详细)
语法
grep [参数] [命令]
参数说明
-n 监控的状态输出间隔时间,默认是2秒
-d 高亮显示每次变化的位置
-t 关闭动态显示内容的顶部的时间间隔,当前监视命令等信息
案例
-n 参数每隔2秒显示网络连接数的变化情况
watch -n 2 netstat -ant
[root@guiyun ~]# watch -n 2 netstat -ant
Every 2.0s: netstat -ant Tue Dec 29 21:38:24 2020
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:888 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN
'''
# 本内容此时会动态变化
'''
tcp6 0 0 :::3306 :::* LISTEN
tcp6 0 0 :::111 :::* LISTEN
tcp6 0 0 :::21 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 ::1:25 :::* LISTEN
tcp6 0 0 ::1:6010 :::* LISTEN
退出:Ctrl + c
-d 参数高亮显示每次变化的部分(红框部分)
[root@guiyun ~]# watch -n 2 -d netstat -ant
-t参数取消顶部的时间间隔,当前监视命令等信息
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:888 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8989 0.0.0.0:* LISTEN
tcp6 0 0 :::3306 :::* LISTEN
tcp6 0 0 :::111 :::* LISTEN
tcp6 0 0 :::21 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 ::1:25 :::* LISTEN
tcp6 0 0 ::1:6010 :::* LISTEN
----END----