電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>fileboy文件變更監(jiān)聽通知系統(tǒng)

fileboy文件變更監(jiān)聽通知系統(tǒng)

2022-04-27 | zip | 0.18 MB | 次下載 | 2積分

資料介紹

授權(quán)協(xié)議 MIT
開發(fā)語言 Google Go
軟件類型 開源軟件

軟件簡介

fileboy 是一個文件變更監(jiān)聽通知系統(tǒng),使用 Go 編寫。

適用于 Hot Reload (典型的如開發(fā)go項目,無需每次手動執(zhí)行 go build;又比如前端 node 打包) 或者 系統(tǒng)監(jiān)控的場景。

特性

  • 極簡的用法和配置
  • 支持多平臺,Windows/Linux/MacOS
  • 支持自定義文件監(jiān)聽范圍,監(jiān)聽指定文件夾/不監(jiān)聽指定文件夾/指定后綴文件
  • 支持自定義監(jiān)控事件(write/rename/remove/create/chmod)
  • 支持設(shè)置多條命令
  • 命令支持變量占位符
  • 支持冗余任務(wù)丟棄,自定義冗余任務(wù)范圍
  • 支持 http 通知
  • 更多...

編譯環(huán)境

go version 1.13

更新日志

CHANGELOG

運行

下載二進(jìn)制文件

Github:?download v1.12
Gitee:?dowmload v1.12

下載已經(jīng)編譯好的對應(yīng)平臺二進(jìn)制文件,重命名為fileboy, 加入系統(tǒng) Path 中即可。

源碼編譯

clone 該項目,進(jìn)入主目錄,運行命令:

## 安裝依賴
go get -u gopkg.in/fsnotify/fsnotify.v1
go get -u gopkg.in/yaml.v2
## 編譯
go build
## 運行
./fileboy

使用

fileboy 的正常運行依賴于?filegirl.yaml?配置文件,因此首次在項目中使用需要初始化?filegirl.yaml。

  • 進(jìn)入你想要 hot reload 的項目主目錄下;
  • 運行?fileboy init,會在該目錄下生成?filegirl.yaml文件;
  • 查看?filegirl.yaml,修改為適合自己項目的配置項;
  • 運行?fileboy即可.

如果你定義了?command -> exec命令,想事先確認(rèn)是否能正常執(zhí)行,可以運行?fileboy exec命令,系統(tǒng)會嘗試運行你的自定義命令。
你可以使用?fileboy help查看使用幫助。

filegirl.yaml 配置文件說明

# 主配置
core:
    # 配置版本號
    version: 1

# 監(jiān)控配置
monitor:
    # 要監(jiān)聽的目錄
    # test1       監(jiān)聽當(dāng)前目錄下 test1 目錄
    # test1/test2 監(jiān)聽當(dāng)前目錄下 test1/test2 目錄
    # test1,*     監(jiān)聽當(dāng)前目錄下 test1 目錄及其所有子目錄(遞歸)
    # .,*         監(jiān)聽當(dāng)前目錄及其所有子目錄(遞歸)
    includeDirs:
        - .,*

    # 不監(jiān)聽的目錄
    # .idea   忽略.idea目錄及其所有子目錄的監(jiān)聽
    exceptDirs:
        - .idea
        - .git
        - .vscode
        - node_modules
        - vendor

    # 監(jiān)聽文件的格式,此類文件更改會執(zhí)行 command 中的命令
    # .go   后綴為 .go 的文件更改,會執(zhí)行 command 中的命令
    # .*    所有的文件更改都會執(zhí)行 command 中的命令
    types:
        - .go

    # 監(jiān)聽的事件類型,發(fā)生此類事件才執(zhí)行 command 中的命令
    # 沒有該配置默認(rèn)監(jiān)聽所有事件
    # write   寫入文件事件
    # rename  重命名文件事件
    # remove  移除文件事件
    # create  創(chuàng)建文件事件
    # chmod   更新文件權(quán)限事件(類unix)
    events:
        - write
        - rename
        - remove
        - create
        - chmod

# 命令
command:
    # 監(jiān)聽的文件有更改會執(zhí)行的命令
    # 可以有多條命令,會依次執(zhí)行
    # 如有多條命令,每條命令都會等待上一條命令執(zhí)行完畢后才會執(zhí)行
    # 如遇交互式命令,允許外部獲取輸入
    # 支持變量占位符,運行命令時會替換成實際值:
    #    {{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毫秒后才會執(zhí)行,單位為毫秒
    # 一個變更事件(A)如果在定義的延遲時間(t)內(nèi),又有新的文件變更事件(B),那么A會取消執(zhí)行。
    # B及以后的事件均依次類推,直到事件Z在t內(nèi)沒有新事件產(chǎn)生,Z 會執(zhí)行
    # 合理設(shè)置延遲時間,將有效減少冗余和重復(fù)任務(wù)的執(zhí)行
    # 如果不需要該特性,設(shè)置為 0
    delayMillSecond: 2000

# 通知器
notifier:
    # 文件更改會向該 url 發(fā)送請求(POST 一段 json 文本數(shù)據(jù))
    # 觸發(fā)請求的時機(jī)和執(zhí)行 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

  • ?命令支持變量占位符
  • ?支持多命令
  • ?支持監(jiān)聽指定文件夾
  • ?支持不監(jiān)聽指定文件夾
  • ?支持監(jiān)聽指定后綴文件
  • ?支持自定事件監(jiān)聽
  • ?支持 http 通知
  • ?支持冗余任務(wù)丟棄
  • ?支持 http 合并任務(wù)的通知
?

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關(guān)電源設(shè)計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費