So, I was surprised to find out that Dir.mkdir will not create all
folders in a path when more than just the last level does not exist.
Example: Dir.mkdir('/f1/f2/f3') will not create /f3 when /f2 does not
exist. I expected it to make both /f2 and /f3 to get the job done. I
expected it because the language I used most previously did do that.
After some googling I'm not finding any elegant solutions.
Obviously I could split the path at / and iterate through each folder
name in sequence with an Exists? and mkdir follow up if needed.
Is that really the only option? To do this manually?
So, I was surprised to find out that Dir.mkdir will not create all
folders in a path when more than just the last level does not exist.
Example: Dir.mkdir('/f1/f2/f3') will not create /f3 when /f2 does not
exist. I expected it to make both /f2 and /f3 to get the job done. I
expected it because the language I used most previously did do that.
After some googling I'm not finding any elegant solutions.
Obviously I could split the path at / and iterate through each folder
name in sequence with an Exists? and mkdir follow up if needed.
Is that really the only option? To do this manually?
ARGH. FileUtils.mkdir_p()
(never fails to find the answer right after posting)
So, I was surprised to find out that Dir.mkdir will not create all
folders in a path when more than just the last level does not exist.
Example: Dir.mkdir('/f1/f2/f3') will not create /f3 when /f2 does not
exist. I expected it to make both /f2 and /f3 to get the job done. I
expected it because the language I used most previously did do that.
Dir.mkdir emulates the unix mkdir command, which behaves this way. It
shouldn't be surprising.
After some googling I'm not finding any elegant solutions.
Did you try ri?
Obviously I could split the path at / and iterate through each folder
name in sequence with an Exists? and mkdir follow up if needed.
Is that really the only option? To do this manually?
No. Look into FileUtils, specifically FileUtils.mkdir_p
Ben
···
On Mon, Feb 8, 2010 at 1:11 PM, Greg Willits <lists@gregwillits.ws> wrote:
On 2010-02-08, Greg Willits <lists@gregwillits.ws> wrote:
So, I was surprised to find out that Dir.mkdir will not create all
folders in a path when more than just the last level does not exist.
Example: Dir.mkdir('/f1/f2/f3') will not create /f3 when /f2 does not
exist. I expected it to make both /f2 and /f3 to get the job done. I
expected it because the language I used most previously did do that.
After some googling I'm not finding any elegant solutions.
Obviously I could split the path at / and iterate through each folder
name in sequence with an Exists? and mkdir follow up if needed.
Is that really the only option? To do this manually?
--
Copyright 2010, all wrongs reversed. Peter Seebach / usenet-nospam@seebs.net | Seebs.Net <-- lawsuits, religion, and funny pictures Fair game (Scientology) - Wikipedia <-- get educated!
On Feb 8, 10:11 pm, Greg Willits <li...@gregwillits.ws> wrote:
So, I was surprised to find out that Dir.mkdir will not create all
folders in a path when more than just the last level does not exist.
Example: Dir.mkdir('/f1/f2/f3') will not create /f3 when /f2 does not
exist. I expected it to make both /f2 and /f3 to get the job done. I
expected it because the language I used most previously did do that.
After some googling I'm not finding any elegant solutions.