插件窝 干货文章 如何使用 Linux 上的 watch 命令定期运行程序

如何使用 Linux 上的 watch 命令定期运行程序

watch 命令 监控 bash 726    来源:    2025-05-14

使用 Linux watch 命令定期运行程序

watch 是 Linux 中一个非常有用的命令,它可以定期执行指定的命令并全屏显示输出结果。这对于监控系统状态、观察日志变化或定期检查命令输出非常有用。

基本用法

watch [选项] 命令

常用示例

  1. 基本监控 - 每2秒执行一次命令:

    watch date
    
  2. 监控磁盘空间

    watch df -h
    
  3. 监控内存使用情况

    watch free -m
    
  4. 监控进程

    watch 'ps aux | grep httpd'
    

常用选项

选项 说明
-n--interval 设置更新间隔时间(秒),默认2秒
-d--differences 高亮显示变化的输出
-t--no-title 不显示标题栏
-b--beep 命令返回非零状态时发出蜂鸣声
-e--errexit 命令出错时停止更新并退出
-g--chgexit 输出变化时退出

高级用法

  1. 自定义间隔时间(例如每5秒):

    watch -n 5 'ls -l'
    
  2. 高亮显示变化

    watch -d 'netstat -tulpn'
    
  3. 组合多个命令

    watch 'date; echo; uptime'
    
  4. 监控日志文件

    watch 'tail -n 20 /var/log/syslog'
    
  5. 监控网络连接

    watch -n 1 'netstat -an | grep ESTABLISHED | wc -l'
    

退出 watch

要退出 watch 命令,只需按下 Ctrl+C

注意事项

  1. 如果命令中包含特殊字符(如 |, >, ; 等),需要用引号将命令括起来
  2. watch 会持续运行直到手动停止,适合长期监控
  3. 对于需要更高频率监控的情况,可以考虑减少间隔时间,但要注意系统负载

watch 是一个简单但功能强大的工具,特别适合系统管理员和开发人员用于实时监控系统状态和命令输出。