Linux系统之watch命令的基本使用

Linux系统之watch命令的基本使用

  • 一、watch命令介绍
  • 二、watch命令的使用帮助
    • [2.1 watch命令的help帮助](#2.1 watch命令的help帮助)
    • [2.2 watch命令的语法解释](#2.2 watch命令的语法解释)
  • 三、watch命令的基本使用
    • [3.1 使用默认的2秒时间间隔执行ls命令](#3.1 使用默认的2秒时间间隔执行ls命令)
    • [3.2 每隔10秒执行一次ps命令](#3.2 每隔10秒执行一次ps命令)
    • [3.3 每隔1秒输出一次磁盘使用情况](#3.3 每隔1秒输出一次磁盘使用情况)
    • [3.4 高亮显示grep命令的输出](#3.4 高亮显示grep命令的输出)
    • [3.5 仅输出命令结果](#3.5 仅输出命令结果)
  • 四、watch命令的日常使用场景
    • [4.1 监控目录下的文件变化](#4.1 监控目录下的文件变化)
    • [4.2 监控文件内容的变化](#4.2 监控文件内容的变化)
    • [4.3 监控内存的变化](#4.3 监控内存的变化)
    • [4.4 监控系统负载情况](#4.4 监控系统负载情况)
    • [4.5 监控httpd服务状态](#4.5 监控httpd服务状态)
  • 五、watch命令的使用注意事项

一、watch命令介绍

watch命令是Linux/Unix下一个非常实用的命令,可以用来定期执行一个命令并打印输出结果,可以帮助用户实时监测命令的输出结果,非常适合于需要反复执行某个命令并观察其输出结果的场景。

二、watch命令的使用帮助

2.1 watch命令的help帮助

使用help查询帮助信息

bash 复制代码
[root@jeven ~]# watch --help

Usage:
 watch [options] command

Options:
  -b, --beep             beep if command has a non-zero exit
  -c, --color            interpret ANSI color and style sequences
  -d, --differences[=<permanent>]
                         highlight changes between updates
  -e, --errexit          exit if command has a non-zero exit
  -g, --chgexit          exit when output from command changes
  -n, --interval <secs>  seconds to wait between updates
  -p, --precise          attempt run command in precise intervals
  -t, --no-title         turn off header
  -x, --exec             pass command to exec instead of "sh -c"

 -h, --help     display this help and exit
 -v, --version  output version information and exit

For more details see watch(1).

2.2 watch命令的语法解释

  • 语法
bash 复制代码
watch(选项)(参数)
  • 选项
bash 复制代码
-n或--interval:指定执行命令的间隔时间,默认为2秒;
-d或--differences:高亮显示变化的部分;
-t或--no-title:不在顶部显示标题栏,仅显示命令输出结果;
-p或--precise:使用最精确的输出,每秒输出一次;
-c或--color:使用彩色输出。
-h或--help:显示帮助信息。
  • 参数
bash 复制代码
指令:需要周期性执行的指令。

三、watch命令的基本使用

3.1 使用默认的2秒时间间隔执行ls命令

执行以下命令,使用默认的2秒时间间隔执行ls命令。

bash 复制代码
watch ls

3.2 每隔10秒执行一次ps命令

使用watch的-n命令,每隔10秒执行一次ps命令。

bash 复制代码
watch -n 10 ps

3.3 每隔1秒输出一次磁盘使用情况

使用以下命令,每隔1秒输出一次磁盘使用情况。

bash 复制代码
watch -n 1 df -h

3.4 高亮显示grep命令的输出

高亮显示grep命令的输出

bash 复制代码
watch -d grep "error" /var/log/messages

3.5 仅输出命令结果

不显示标题栏,仅输出命令结果

bash 复制代码
watch -t date

四、watch命令的日常使用场景

4.1 监控目录下的文件变化

执行以下命令,另外再开启一个终端,在当前目录下新建文件,查看监控变化。

bash 复制代码
watch -n 5 ls

使用-d命令,高亮显示变化部分。

bash 复制代码
watch -d -n 5 ls

4.2 监控文件内容的变化

执行以下命令,在另外一个终端,修改文件内容,查看监控中文件内容的变化情况。

bash 复制代码
echo "hello" >> myweb.txt
bash 复制代码
watch -d -n 5 cat myweb.txt

4.3 监控内存的变化

使用以下命令,监控内存的变化情况。

bash 复制代码
watch -d -c -n 1 free -m

4.4 监控系统负载情况

使用以下命令,监控系统负载情况。

bash 复制代码
watch -d -c -n 1 uptime

4.5 监控httpd服务状态

使用以下命令监听httpd的80端口监听状态

bash 复制代码
watch -d -c -n 1 'ss -tunlp |grep 80'

五、watch命令的使用注意事项

  • watch命令的输出结果由终端宽度限制,如果输出结果过长可能会被截断;
  • 如果命令执行时间较长,可能会导致watch命令的输出结果不太准确,甚至会出现一些异常行为;
  • watch命令不能用于交互式命令,如vi等。
相关推荐
超龄超能程序猿4 分钟前
Bitvisse SSH Client 安装配置文档
运维·ssh·github
奈斯ing21 分钟前
【Redis篇】数据库架构演进中Redis缓存的技术必然性—高并发场景下穿透、击穿、雪崩的体系化解决方案
运维·redis·缓存·数据库架构
鳄鱼皮坡1 小时前
仿muduo库One Thread One Loop式主从Reactor模型实现高并发服务器
运维·服务器
即将头秃的程序媛1 小时前
centos 7.9安装tomcat,并实现开机自启
linux·运维·centos
fangeqin1 小时前
ubuntu源码安装python3.13遇到Could not build the ssl module!解决方法
linux·python·ubuntu·openssl
小Mie不吃饭1 小时前
FastAPI 小白教程:从入门级到实战(源码教程)
运维·服务器
fo安方2 小时前
运维的利器–监控–zabbix–第三步:配置zabbix–中间件–Tomcat–步骤+验证
运维·中间件·zabbix
爱奥尼欧2 小时前
【Linux 系统】基础IO——Linux中对文件的理解
linux·服务器·microsoft
超喜欢下雨天3 小时前
服务器安装 ros2时遇到底层库依赖冲突的问题
linux·运维·服务器·ros2
搬码临时工3 小时前
小企业如何搭建本地私有云服务器,并设置内部网络地址提供互联网访问
运维·服务器