X

Linux Bash 監控檔案修改 執行即時合併

JavaScript 常常會需要修改後,執行壓縮等動作,常見的會是用 grunt 做類似下述命令:

不過要做檔案合併、檢查、壓縮..  等等,應該不用這麼費工,Shell 就可以做到,於是簡單的寫了一套。

註:整個程式只有兩個檔案,全部內容只有5行,相信修改應該沒有難度。(程式語言:Linux 的 Bash Shell)

Linux Bash 監控檔案修改 執行即時合併

JavaScript 檢查程式、壓縮程式這些有各自喜好,請自行修改 Script 去達成即可。

此程式內含的只有做最簡單的檔案合併,可以自行靠 pipe 加上 jshine、uglify..  等等。

  • 完整程式於此處:tsung/watch-bash
  • 此程式的功用在於開啟即時監控此目錄下的所有檔案,有任何修改,立刻做檔案合併的動作。

程式使用說明

  • 執行:./watch_linux.sh
  • 停止:Ctrl + c

程式修改說明

  • 說明此程式用到的指令:
    • watch:每秒執行一次,循序不斷地執行
    • find:找出每秒更新的檔案
    • cat:合併內容
    • 想要對檔案、目錄做任何監控、排除等動作(watch_linux.sh),都使用 find 的命令達成 (iname、! -path .. 等等)。
    • 想要對檔案做合併、壓縮等動作,修改 concat.sh,加入即可。

測試環境與操作

  1. cd /tmp
  2. git clone https://github.com/tsung/watch-bash
  3. cd watch-bash/example/ # 將 util.js 裡面的 Library 檔案合併在前面,將合併後的內容放於 dist/
  4. vim util.js # 隨意寫寫
  5. vim test.js # 隨意寫寫
  6. ./watch_linux.sh # 開啟 watch.sh
  7. vim test.js # 修改內容,註:修改 util.js 請不要開啟 watch.sh,或者 watch_linux.sh 需要增加排除 util.js 的檔案檢查(find)
  8. 於 dist/ 自動產生 test.min.js 的檔案,是將 util.js + test.js 合併起來的

相關網頁

Tsung: 對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
Related Post