2014-03-06 57 views
1
所示

我有以下腳本,輸出爲我做出改變到另一個文件所呈現的文件的名稱:輸出不是STDOUT

jade --watch --pretty index.jade 

由於我使用這個很多我的項目我決定創建一個耙子任務。但是當我啓動rake任務時,文件會呈現,但我不再看到輸出。

我知道在這種情況下,輸出以某種方式流式傳輸到STDOUT,這似乎表現出與執行命令ls命令不同的行爲。

這是我的Rakefile:

desc 'Watch .jade files' 
task :watch do 
    puts `jade --watch --pretty index.jade` 
end 

回答

1

爲什麼你沒有看到任何輸出的原因是jade將阻止,而它的運行,只有當你殺死它返回。如果你要殺死它,你會看到puts生效。

你想要的是使用system

system("jade --watch --pretty index.jade") 

將使用你的程序的標準輸出。

+0

@besi該編輯是絕對沒有用,或必需的。請貢獻真正的工作,而不是隻爲徽章工作。 – gmalette

相關問題