From: Joel VanderWerf Date: 2004-01-03T12:04:45+09:00 Subject: Re: Dir.chdir '~' Mark J. Reed wrote: > On Fri, Jan 02, 2004 at 09:22:02PM -0500, Tim Heaney wrote: > >>Joel VanderWerf writes: >> >> >>>Does anyone know why this happens? >>> >>>$ irb >>>irb(main):001:0> Dir.chdir '~' >>>=> 0 >>>irb(main):002:0> Dir.chdir '~' >>>Errno::ENOENT: No such file or directory - ~ >>> from (irb):2:in `chdir' >>> from (irb):2 >>>$ ruby -v >>>ruby 1.8.1 (2003-12-25) [i686-linux] >> >>You must be starting out in a directory with a ~ subdirectory that >>does not itself have a ~ subdirectory. Thus the first time you change >>to directory ~ it succeeds, but the second time it fails. > > > More to the point, I think is that Ruby doesn't expand ~ the way > the UNIX shells do. What you probably want is Dir.chdir(ENV['HOME']). Ok. I guess I have to expand_path if I want that behavior. irb(main):001:0> File.expand_path '~' => "/home/vjoel" Thanks!