Skip to content

ganshenmail/watcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

文件监视工具

一个Go语言实现的文件监视工具,支持热重载配置。

功能特性

  • 监视指定目录下的文件变更
  • 支持多种文件扩展名过滤
  • 递归监视子目录
  • 配置文件热重载
  • 可配置的防抖(debounce)时间

安装

  1. 确保已安装Go 1.16+
  2. 克隆仓库或下载源代码
  3. 安装依赖:
    go get github.com/fsnotify/fsnotify
    go get github.com/fatih/color

使用说明

基本使用

go run main.go

配置文件示例 (config.json)

{
  "dir": "./watch_dir",
  "ext": [".log", ".tmp"],
  "recursive": true,
  "debounce": "500ms"
}

配置项说明

  • dir: 要监视的目录路径
  • ext: 要监视的文件扩展名数组(支持单个字符串或数组)
  • recursive: 是否递归监视子目录
  • debounce: 事件防抖时间(如"500ms")

热重载功能

程序运行时修改config.json文件会自动重新加载配置,无需重启程序。

依赖项

构建

go build -o filewatcher

About

一个Go语言实现的文件监视工具,支持热重载配置。

Resources

Stars

Watchers

Forks

Languages