Nobuyoshi Nakada wrote: > Hi, > > At Mon, 18 Aug 2008 23:36:27 +0900, > Luis Lavena wrote in [ruby-core:18324]: > >> irb(main):012:0> File.expand_path("~oracle") >> => "~oracle" >> >> In the last line you can see the problem... it doesn't expand the path >> if ~ is found in as part of the path to expand. >> > > It should raise an exception, and this is the point of OP. > > $ ruby18 -v -e 'p File.expand_path("~oracle")' > ruby 1.8.7 (2008-08-18 revision 18677) [i686-linux] > -e:1:in `expand_path': user oracle doesn't exist (ArgumentError) > from -e:1 > $ ruby19 -v -e 'p File.expand_path("~oracle")' > ruby 1.9.0 (2008-08-18 revision 18687) [i686-linux] > -e:1:in `expand_path': user oracle doesn't exist (ArgumentError) > from -e:1:in `<main>' > > The example was used because it is the one of the examples in the documentation for File.expand_path() If there is a user named 'oracle' on the system being used, then file expand_path will always return it's home dir say '/home/oracle'. If you are in a dir named '/home/user/test' and it contains a dir '~oracle' then calling expand_path("~oracle") while in that area returns '/home/oracle' NOT '/home/user/test/~oracle' Chuck T. -- Competency and chastity have much in common, they both encompass their own punishment! -- C.E. Thornton -- Hawthorne Press --