Пытается написать скрипт, который будет искать в каталоге и подкаталогах для определенных файлов. Я хотел бы знать, как создается определенный каталог или каталоги для вызова метода.Метод вызова метода walk walk, когда каталог достигнут
это то, что я пытался и не смог:
def display_directory(path)
list = Dir[path+'/*']
return if list.length == 0
list.each do |f|
if File.directory? f #is it a directory?
if File.directory?('config')
puts "this is the config folder"
end
printf "%-50s %s\n", f, "is a directory:".upcase.rjust(25)
else
printf "%-50s %s\n", f, "is not a directory:".upcase.rjust(25)
end
end
end
start = File.join("**")
puts "Processing directory\n\n".upcase.center(30)
display_directory start
это то, что я хочу, чтобы это произошло.
app
app/controllers
app/helpers
app/mailers
app/models
app/models/bugzilla
app/models/security
app/views
app/views/auth
app/views/calendar
app/views/layouts
app/views/step
app/views/step_mailer
app/views/suggestion
app/views/suggestion_mailer
app/views/task
app/views/user
bin
--------------------------------------
config <----------(call method foo)
config/environments
config/initializers
config/locales
--------------------------------------
db
db/bugzilla
db/migrate
db/security
lib
lib/tasks
log
public
public/images
public/javascripts
public/stylesheets
script
script/performance
script/process
--------------------------
test <---------(call method foobar)
test/fixtures
test/fixtures/mailer
test/functional
test/integration
test/performance
test/unit
--------------------------
vendor
vendor/plugins
Почему это не удалось? Ошибка? Что случилось? Каков результат вашего скрипта? Какая рубиновая версия? – fotanus
Он печатает «это папка конфигурации», но это неправильная папка. 'это папка config tmp/cache/B27/910', это каталог, который он не ищет. мой оператор if выключен. –
Я не понял вашу формулировку. Не могли бы вы переформулировать свой вопрос с точными ожиданиями? – dimitarvp