2016-04-29 74 views

回答

0

<%= =>

這些lodash.template 「插值」 分隔符獲取文件名。它們允許您將任意值插入到字符串中。您可以在exec()的第二個參數中提供這些值。那些值然後可以作爲字符串中options對象的屬性。從<%==>的所有內容都被替換爲中間的options屬性的值。

實施例:

gulp.src('.') 
    .pipe(exec('cp <%= options.in %> <%= options.out %>', {in:'foo', out:'bar'})); 

在上述:

  • <%= options.in %>替換foo
  • <%= options.out %>被替換爲bar

所以執行的命令是cp foo bar


file.path

options對象是不是可以插的唯一對象。從gulp.src()發出的每個Vinyl file執行exec()中的命令。每次執行該命令時,file對象都會引用該命令在其上執行的特定乙烯基文件。

實施例:

gulp.src(['foo.txt', 'bar.txt']) 
    .pipe(exec('rm <%= file.path %>', {})); 

此執行兩個命令,一個用於通過gulp.src()匹配的每個文件:

  • rm /path/to/foo.txt
  • rm /path/to/bar.txt
0

它顯示的文件路徑爲通過Gulp任務流,從VinylVinyl將有更多的信息,你可以使用什麼。

例如,您可以通過這樣做,而不是

<%= file.relative %>