資料介紹
軟件簡介
fileboy 是一個文件變更監聽通知系統,使用 Go 編寫。
適用于 Hot Reload (典型的如開發go項目,無需每次手動執行 go build;又比如前端 node 打包) 或者 系統監控的場景。
特性
- 極簡的用法和配置
- 支持多平臺,Windows/Linux/MacOS
- 支持自定義文件監聽范圍,監聽指定文件夾/不監聽指定文件夾/指定后綴文件
- 支持自定義監控事件(write/rename/remove/create/chmod)
- 支持設置多條命令
- 命令支持變量占位符
- 支持冗余任務丟棄,自定義冗余任務范圍
- 支持 http 通知
- 更多...
編譯環境
go version 1.13
更新日志
運行
下載二進制文件
Github:?download v1.12
Gitee:?dowmload v1.12
下載已經編譯好的對應平臺二進制文件,重命名為fileboy, 加入系統 Path 中即可。
源碼編譯
clone 該項目,進入主目錄,運行命令:
## 安裝依賴 go get -u gopkg.in/fsnotify/fsnotify.v1 go get -u gopkg.in/yaml.v2 ## 編譯 go build ## 運行 ./fileboy
使用
fileboy 的正常運行依賴于?filegirl.yaml?配置文件,因此首次在項目中使用需要初始化?filegirl.yaml。
- 進入你想要 hot reload 的項目主目錄下;
-
運行?
fileboy init,會在該目錄下生成?filegirl.yaml文件; -
查看?
filegirl.yaml,修改為適合自己項目的配置項; -
運行?
fileboy即可.
如果你定義了?command -> exec命令,想事先確認是否能正常執行,可以運行?fileboy exec命令,系統會嘗試運行你的自定義命令。
你可以使用?fileboy help查看使用幫助。
filegirl.yaml 配置文件說明
# 主配置
core:
# 配置版本號
version: 1
# 監控配置
monitor:
# 要監聽的目錄
# test1 監聽當前目錄下 test1 目錄
# test1/test2 監聽當前目錄下 test1/test2 目錄
# test1,* 監聽當前目錄下 test1 目錄及其所有子目錄(遞歸)
# .,* 監聽當前目錄及其所有子目錄(遞歸)
includeDirs:
- .,*
# 不監聽的目錄
# .idea 忽略.idea目錄及其所有子目錄的監聽
exceptDirs:
- .idea
- .git
- .vscode
- node_modules
- vendor
# 監聽文件的格式,此類文件更改會執行 command 中的命令
# .go 后綴為 .go 的文件更改,會執行 command 中的命令
# .* 所有的文件更改都會執行 command 中的命令
types:
- .go
# 監聽的事件類型,發生此類事件才執行 command 中的命令
# 沒有該配置默認監聽所有事件
# write 寫入文件事件
# rename 重命名文件事件
# remove 移除文件事件
# create 創建文件事件
# chmod 更新文件權限事件(類unix)
events:
- write
- rename
- remove
- create
- chmod
# 命令
command:
# 監聽的文件有更改會執行的命令
# 可以有多條命令,會依次執行
# 如有多條命令,每條命令都會等待上一條命令執行完畢后才會執行
# 如遇交互式命令,允許外部獲取輸入
# 支持變量占位符,運行命令時會替換成實際值:
# {{file}} 文件名(如 a.txt 、test/test2/a.go)
# {{ext}} 文件后綴(如 .go)
# {{event}} 事件(上面的events, 如 write)
# {{changed}} 文件更新的本地時間戳(納秒,如 1537326690523046400)
# 變量占位符使用示例:cp {{file}} /root/sync -rf 、 myCommand --{{ext}} {{changed}}
exec:
- go version
- go env
# 文件變更后命令在xx毫秒后才會執行,單位為毫秒
# 一個變更事件(A)如果在定義的延遲時間(t)內,又有新的文件變更事件(B),那么A會取消執行。
# B及以后的事件均依次類推,直到事件Z在t內沒有新事件產生,Z 會執行
# 合理設置延遲時間,將有效減少冗余和重復任務的執行
# 如果不需要該特性,設置為 0
delayMillSecond: 2000
# 通知器
notifier:
# 文件更改會向該 url 發送請求(POST 一段 json 文本數據)
# 觸發請求的時機和執行 command 命令是一致的
# 請求超時 15 秒
# POST 格式:
# Content-Type: application/json;charset=UTF-8
# User-Agent: FileBoy Net Notifier v1.12
# Body: {"project_folder":"/project/path","file":"main.go","changed":1576567861913824940,"ext":".go","event":"write"}
# 例: http://example.com/notifier/fileboy-listener
# 不啟用通知,請留空 ""
callUrl: ""
TODO
- ?命令支持變量占位符
- ?支持多命令
- ?支持監聽指定文件夾
- ?支持不監聽指定文件夾
- ?支持監聽指定后綴文件
- ?支持自定事件監聽
- ?支持 http 通知
- ?支持冗余任務丟棄
- ?支持 http 合并任務的通知
- 瑞薩產品變更通知(PCN)
- 關于CNAS調整認可變更管理方式的通知
- MM32SPIN06系列版本變更通知(英文版) 0次下載
- MM32SPIN05系列版本變更通知(英文版) 0次下載
- MM32SPIN05PF 增加封裝供應商變更通知表(英文版) 0次下載
- MM32SPIN05NW 新增框架第二供應商變更通知表(中文版) 0次下載
- MM32F031系列版本變更通知(英文版) 0次下載
- MM32F031F6U6 新增框架第二供應商變更通知表(中文版) 0次下載
- MM32F003系列版本變更通知(英文版) 0次下載
- MM32F003NW 新增框架第二供應商變更通知表(中文版) 0次下載
- MM32F0130系列版本變更通知(英文版) 0次下載
- 產品變更通知:AS5132_PN000125_1-00.pdf
- 產品變更通知:AS3955_PN000114_1-00.pdf
- 音頻監聽音箱系統--AMS160
- 音頻監聽音箱系統
- 如何修改buildroot和debian文件系統 1.4k次閱讀
- Agith:openEuler 運維變更觀測工具 1.7k次閱讀
- 一個串口工具監聽多路串口收發方案 4.9k次閱讀
- C程序設計基礎-文件系統 1.5k次閱讀
- FreeRTOS任務通知簡介及實現 3.1k次閱讀
- Verilog中關于文件操作的系統任務 2.3k次閱讀
- 什么是分布式文件系統 5.2k次閱讀
- 聲控傳感器構成的防盜監聽電路 3.8k次閱讀
- 基于PDM系統的工程變更優化研究與實踐 1.3k次閱讀
- 文件系統是什么?淺談EXT文件系統歷史 6.2k次閱讀
- 關于監聽:頻率響應和個人偏好 5.4k次閱讀
- debian安裝zfs文件系統 1.2w次閱讀
- 一文詳解載波監聽技術(CSMA算法分析) 1.2w次閱讀
- hifi音箱和監聽音箱的區別 2.5w次閱讀
- 玩轉Linux,先把文件系統搞懂 2.2k次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
電子發燒友App





創作
發文章
發帖
提問
發資料
發視頻
上傳資料賺積分
評論