ディレクトリとそのすべてのサブディレクトリを再帰しようとしています。「検索」やこれ以外の方法は使いたくありません。
task :locate do
Dir.chdir(Dir.pwd+"/public/servers_info/config/deploy/")
puts "Current Directory is: "+ Dir.pwd
dir = Dir.pwd
def get_information(dir)
Dir.foreach(".") {|f|
next if f == '.' or f == '..'
if File.directory? f
puts f
#puts Dir.pwd+"/"+f
get_information(Dir.pwd+"/"+f)
else
puts "Not Directory"
end
}
end
get_information(dir)
end
私はそれがうまくいくと確信しています、なぜそれが最初のディレクトリでスタックするのか分かりません!ベースディレクトリに入り、ファイルがディレクトリかどうかをチェックしてから、同じ機能を再度実行します。しかし、そうではありません!最初のフォルダでスタックし、エラーが発生します。何か助けはありますか?