2014-04-06 91 views

回答

9

所選答案在Bash是默認解釋器的Windows或系統上不起作用。您應該使用Ruby解決方案以跨平臺(並且更快,因爲沒有進程產卵):

directory '/var/www/html' do 
    action :delete 
    not_if { File.symlink?('/var/www/html') } 
end 
+1

謝謝!這聽起來不錯。我改變了食譜,它很好!食譜需要跨平臺。我將答案選擇更改爲您的答案。 – morizotter

1

如何:

directory "/var/www/html/" do 
    action :delete 
    not_if "test -L /var/www/html/" 
end 

test -L $file返回0(真),如果$file是一個符號鏈接。

+0

謝謝!我解決了您的解決方案的問題。但我消除了最後的路徑。 – morizotter

+1

我會在'not_if'塊中尋找基於ruby的解決方案。見[這裏](http://stackoverflow.com/questions/4897568/ruby-on-rails-check-if-a-directory-file-symlink-exists-with-one-command)。 – StephenKing

+0

謝謝。基於ruby的解決方案更好。 – morizotter

相關問題