2013-05-14 17 views
13

Başka bir dizinde olması gereken birden çok komut çalıştırmak istiyorum (veya daha kolay), sonra bittiğinde, önceki çalışma dizinine geri dönün. Ben Fabric's with cd(path): benzer bir şey canlandırdığımGeçerli dizini geçici olarak değiştir Rake

, ör .:

cd('.git') do 
    File.unlink('config') 
end 

Rake Bunu yapmanın bir dahili yol var mı, yoksa vb bir blok, kabul eden bir özel yazma yöntemi olmalıdır?

cevap

31

Bu sadece dahili Dir#chdir çağrısıdır: docs den

Dir.chdir('.git') do 
    File.unlink('config') 
end 

alıntı: bir blok verilir

ise, yeni Geçerli dizinin adını geçirilir ve blok , geçerli dizin ile gerçekleştirilir. Özgün çalışma dizini, blok çıktığında geri yüklenir.

İlgili konular