[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Etc.dir, Etc.name

Ronald Fischer

10/20/2006 7:38:00 AM

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 method `shell' 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


--
Ronald Fischer <ronaldf@eml.cc>
Posted via http://www.news...

2 Answers

Yukihiro Matsumoto

10/20/2006 8:09:00 AM

0

Hi,

In message "Re: Etc.dir, Etc.name"
on Fri, 20 Oct 2006 16:40:13 +0900, Ronald Fischer <ronaldf@eml.cc> 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 method `shell' 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.

Ronald Otto Valentin

10/23/2006 7:04:00 AM

0

Yukihiro Matsumoto 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