2013-08-05 49 views
8

實現以下目標所需的模式是什麼?Grunt Globbing patterns

  1. 匹配目錄.tmp
  2. 比賽中的.tmp /視圖的所有HTML文件和所有子目錄(遞歸到任何深度)

這是註冊livereload所有的HTML文件Grunt文件中的任務。

我嘗試了幾個以下配置的品種。它的所有文件匹配.tmp,但不是遞歸.tmp/views

也試過,

'.tmp/{,views/**/}*.html' 

,但相同的結果。

livereload: { 
        options: { 
         livereload: LIVERELOAD_PORT 
        }, 
        files: [ 
         '.tmp/{,views/**}*.html' 
        ] 
       } 

回答

10

您應該能夠通過使兩個元素的文件數組中得到你所需要的匹配:

files: [ 
    '.tmp/*.html', 
    '.tmp/views/**/*.html', 
] 

這將匹配正下方.tmp/任何.html文件,以及.tmp/views/中的任何.html文件,無論是直接在該目錄下還是更深(/**/部分)。

+0

+1,它的工作原理。爲了完整性,它與模式'.tmp/{,views/** /} *。html'謝謝。 – bsr

+0

我有一種感覺,因爲逗號之前的表達式是空的,儘管我不確定。無論哪種方式,我會使用上面的數組語法,因爲它更清楚它的匹配 – Bojangles