「ディレクトリ」キーワードは省略形として使用できるといくつかの場所で述べられています。どうやら、それは依存関係として示すことができるので、まだ存在していない場合は作成されます。
http://onestepback.org/articles/buildingwithrake/directorydependencies.html
宛先ディレクトリを依存関係として指定するという考え方であり、毎回手動で作成しようとするのではなく、を使用して実現できますmkdir_p
。使用の欠点はmkdir_p
、ディレクトリがすでに存在しているかどうかに関係なく、出力が表示されることです。別の解決策は、このコマンドを無音にすることです。ディレクトリが作成されたときにのみ出力が表示される場合は、さらに効果的です。
次のように「directory」キーワードを使用してみました。
file "destFile" => ["srcFile", directory "myOutputDir"] do
FileUtils.cp "srcFile" "myOutputDir/destFile"
end
file "destFile" => ["srcFile"] + [directory "myOutputDir"] do
FileUtils.cp "srcFile" "myOutputDir/destFile"
end
file "destFile" => ["srcFile"] do
directory "myOutputDir"
FileUtils.cp "srcFile" "myOutputDir/destFile"
end