From: Mike Bethany Date: 2010-09-28T04:37:47+09:00 Subject: Re: Check if directory exists Robby Robby wrote: > Lee Jarvis wrote: >> Gavin Kistner wrote: >>> On Dec 18, 10:15 am, Florian Schaf wrote: >>>> hi! >>>> Can anyone tell me how I can check whether a directory exists or not? I >>>> didnt find anything via google or in the docs >>>> thanks! >>> >>> What did you Google for, and where did you search in the docs? >> >> Its a shame people had to post solutions afterwards. That would of been >> interesting. > > Well im glad they posted solutions, for I googled "ruby directory > exists" and got the answer from here. Agreed, I got here from a Google search as well. It amazes me people say things like this, that people purporting to espouse the usage of Google and searches don't actually have a good understanding how they work. They seem to be unable to understand that the Internet is not "right now" but is on a time line into the future and future searches will land here. Posting responses like "use google" are not only useless but demonstrate the person's lack of intellectual ability... but not in a good way. I spoke about this in an article I wrote on how to answer questions, these are how NOT to answer a question. Question: I want to do XYZ using PDQ. Does anyone know what steps I need to take to do this? Answer: I do PDQ using XYZ all the time. It’s really hard. You should Google it. Analysis: Not only did they not answer the question they assume you've never heard of Google. They assume you are so sheltered you've never heard of the number one search engine on the face of the planet. They are basically calling you an ignorant, or lazy, fool when in fact they are the ones being intellectually lazy by assuming you DIDN'T search. Worst of all they claim to know how to answer but refuse to do so. Answer: This has been asked and answered a million times. Next time use search. Analysis: This guy is closely related to the previous one but scores higher on the ironical incompetence scale. I did use search, that’s how I got here. If you are unfamiliar with how search engines work you should probably Google them. I actually figured out myself how to test for the existence of a directory but wanted to see if there was a more "Ruby" way to do it. I now see the .Exists? seem more Ruby-esque but is also more verbose than what I came up with, which is different from the != nil answer, which is actually wrong. Dir[@directory_name] returns an empty array, not nil. At least in Ruby 1.9.2 it acts this way. In following my own advice on giving answers and to paraphrase Bambi's dead mother, "If you don't have something useful to say, STFU." Here's what I came up with to test if a directory does NOT exist; I don't actually use the else part but include it here for completeness. if Dir["/non-existant-directory"] == [] # A non-existant directory returns an empty array, not nil, in Ruby 1.9.2 puts "Directory does not exist" else puts "Directory exists" end -- Posted via http://www.ruby-forum.com/.