Etc.dir, Etc.name

I found some of the Etc functions missing which are mentioned in
Matsumoto’s book “Ruby in a nutshell”, for example Etc.dir and
Etc.shell. OTOH, Etc.name exists (for example):

irb(main):002:0> Etc.dir
NoMethodError: undefined method dir' for Etc:Module from (irb):2 irb(main):003:0> Etc.name => "Etc" irb(main):004:0> Etc.shell NoMethodError: undefined methodshell’ for Etc:Module
from (irb):4
from :0

I’m running the following Ruby version:

$ irb --version
irb 0.9.5(05/04/13)
$ ruby --version
ruby 1.8.4 (2005-12-24) [i686-linux]

As the book was published 2001, it can’t be that I just have an
outdated Ruby version.

What am I doing wrong here?

Ronald

Hi,

In message “Re: Etc.dir, Etc.name”
on Fri, 20 Oct 2006 16:40:13 +0900, Ronald F. [email protected]
writes:

|I found some of the Etc functions missing which are mentioned in
|Matsumoto’s book “Ruby in a nutshell”, for example Etc.dir and
|Etc.shell. OTOH, Etc.name exists (for example):
|
|irb(main):002:0> Etc.dir
|NoMethodError: undefined method dir' for Etc:Module | from (irb):2 |irb(main):003:0> Etc.name |=> "Etc" |irb(main):004:0> Etc.shell |NoMethodError: undefined methodshell’ for Etc:Module
| from (irb):4
| from :0

I don’t have the book at hand right now (since I am staying at the
hotel in Denver for RubyConf), but Etc module never had methods dir
and shell. If it says so, it is a bug in the book. Sorry.

Actually, the value returned from Etc#getpwnam has dir and shell
methods. Use them as in the following code:

pw = Etc.getpwnam(‘root’)
p pw.dir # root’s home directory
p pw.shell # root’s shell

						matz.

Yukihiro M. schrieb:

I don’t have the book at hand right now (since I am staying at the
hotel in Denver for RubyConf), but Etc module never had methods dir
and shell. If it says so, it is a bug in the book. Sorry.

Actually, the value returned from Etc#getpwnam has dir and shell
methods.

Sorry, you are right. I did not pay enough attention to this. So, no
error in the book.

Ronald

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs