(unknown)

This is my first thread on this mailing list, so bare with me.

I've this and it does download TARGET from the FTP server successfully -- I
also have accessed it via lukeftp, i.e. the ftp client that comes with my
FreeBSD and OpenBSD systems here.

The problem seems to be that 'pw = gets' line and I don't understand it. I
have even tried closing the ftp connection before that and reopening it later
but no success.

I'm clueless as to why I'm getting what looks to me like an Errno::ENOENT
exception that references the 'PATH' we Net::FTP#chdir'd to four lines ago.
When all it is doing is calling gets.

Test run:

C:\Documents and Settings\Owner\Desktop>.\tg.rb "path with spaces"
remote_filename ftpsite username passwd

Password: C:/Documents and Settings/Owner/Desktop/tg.rb:32:in `gets': No such fi
le or directory - < the path with spaces > (Errno::ENOENT)
        from C:/Documents and Settings/Owner/Desktop/tg.rb:32

Test Code:

  ftp = Net::FTP.new( HOST, USER, PASSWD, ACCT )
  ftp.chdir( PATH )
  ftp.gettextfile( TARGET )
  print( "Password: " )
  pw = gets
  print( "\n" )
  if pw
    # lock it
  else
    # un lock it
  end
  #ftp.puttextfile( TARGET )
  ftp.close
  puts( 'Please restart the server for the changes to take effect' )

end

Can any one give me a point in the right direction?

TerryP.

PS:

For any one who is interested in the shotty appearance of the test code. I
*do* build case prototypes as I go along. So I can test things out in small
pieces before I begin putting together a 'complete' prototype and finally the
finished program once I am done with testing :slight_smile:

And oh yes I do plan on checking out what Ruby offers for Unit Testing in the
future :wink:

···

--
    
Email and shopping with the feelgood factor!
55% of income to good causes. http://www.ippimail.com

Dang it.... I forgot to set the subject line, sorry for the idiocy...

It is 0530 Sunday here and I've yet to sleep since Friday so please forgive
the airhead move ^^

TerryP.

···

--
    
Email and shopping with the feelgood factor!
55% of income to good causes. http://www.ippimail.com

Terry Poulin wrote:

I'm clueless as to why I'm getting what looks to me like an Errno::ENOENT
exception that references the 'PATH' we Net::FTP#chdir'd to four lines ago.
When all it is doing is calling gets.

If you specify a command line parameter, Kernel#gets treats that as a file
name and tries to read from that file instead of stdin. If you don't want
that, use STDIN.gets instead of Kernel#gets.

HTH,
Sebastian

···

--
Jabber: sepp2k@jabber.org
ICQ: 205544826

I am sorry, but this is plain wrong.

http://ruby-doc.org/core/classes/Kernel.html#M005995

  robert

···

On 04.11.2007 11:43, sepp2k@googlemail.com wrote:

Terry Poulin wrote:

I'm clueless as to why I'm getting what looks to me like an Errno::ENOENT
exception that references the 'PATH' we Net::FTP#chdir'd to four lines ago.
When all it is doing is calling gets.

If you specify a command line parameter, Kernel#gets treats that as a file name and tries to read from that file instead of stdin. If you don't want that, use STDIN.gets instead of Kernel#gets.

Robert Klemme wrote:

···

On 04.11.2007 11:43, sepp2k@googlemail.com wrote:
> If you specify a command line parameter, Kernel#gets treats that as a
> file name and tries to read from that file instead of stdin.

I am sorry, but this is plain wrong.

module Kernel - RDoc Documentation

I'm sorry, maybe I'm a little slow, but isn't "Returns (and assigns to $_) the
next line from the list of files in ARGV (or $*), or from standard input if
no files are present on the command line." basically what I said?
Or are you refering to the fact that my phrasing made it sound as if gets only
cared about the first command line parameter?

--
Jabber: sepp2k@jabber.org
ICQ: 205544826

I read your statement to mean that an argument to gets is treated as a file name. As is obvious now you were referring to the script's arguments and not gets's arguments. My apologies.

Kind regards

  robert

···

On 04.11.2007 13:08, sepp2k@googlemail.com wrote:

Robert Klemme wrote:

On 04.11.2007 11:43, sepp2k@googlemail.com wrote:

If you specify a command line parameter, Kernel#gets treats that as a
file name and tries to read from that file instead of stdin.

I am sorry, but this is plain wrong.

http://ruby-doc.org/core/classes/Kernel.html#M005995

I'm sorry, maybe I'm a little slow, but isn't "Returns (and assigns to $_) the next line from the list of files in ARGV (or $*), or from standard input if no files are present on the command line." basically what I said?
Or are you refering to the fact that my phrasing made it sound as if gets only
cared about the first command line parameter?

Robert Klemme wrote:

If you specify a command line parameter, Kernel#gets treats that as a file
name and tries to read from that file instead of stdin. If you don't want
that, use STDIN.gets instead of Kernel#gets.

HTH,
Sebastian
--
Jabber: sepp2k@jabber.org
ICQ: 205544826

Works perfectly! I never realized there was a Kernel#gets as well, only knew
about IO#gets. If I did know about it I would've just RTFM... Sorry =/

Thanks !

And thanks everyone for not flaming me for forgetting the subject line...

TerryP.

···

On 04.11.2007 13:08, sepp2k@googlemail.com wrote:

Robert Klemme wrote:

On 04.11.2007 11:43, sepp2k@googlemail.com wrote:

If you specify a command line parameter, Kernel#gets treats that as a
file name and tries to read from that file instead of stdin.

I am sorry, but this is plain wrong.

module Kernel - RDoc Documentation

I'm sorry, maybe I'm a little slow, but isn't "Returns (and assigns to $_)
the
next line from the list of files in ARGV (or $*), or from standard input if
no files are present on the command line." basically what I said?
Or are you refering to the fact that my phrasing made it sound as if gets
only
cared about the first command line parameter?

I read your statement to mean that an argument to gets is treated as a
file name. As is obvious now you were referring to the script's
arguments and not gets's arguments. My apologies.

Kind regards

  robert

--
    
Email and shopping with the feelgood factor!
55% of income to good causes. http://www.ippimail.com