Calling SSH from Expect - URGENT

Simha, Shuba shuba_simha@merck.com
Thu Jun 14 09:23:00 GMT 2001


Hi,
I am still working on this, its sad that very few in the Cygwin world could
help me on this! 
Corinna, I saw a similar problem in the cygwin  mailing list in the thread -
"ssh/sshd command line missing response".

Can you tell me what my problem is? I desperately need help on this..

Thanks..
SS


-----Original Message-----
From: Simha, Shuba 
Sent: Thursday, May 31, 2001 11:37 AM
To: 'Mark Paulus'; cygwin@cygwin.com
Subject: RE: Calling SSH from Expect - URGENT


The very same does not work for me !!! Here's the output from my session..

admin@WS007594 ~/scripts
$ cat connect_ws
#!/usr/bin/expect -f
spawn /bin/ssh -l username -p 1010 hostname "ls -l"
expect -re "Enter passphrase for RSA key '.*': "
send "shuba\r"
expect eof


admin@WS007594 ~/scripts
$ ./connect_ws
spawn /bin/ssh -l username -p 1010 hostname ls -l
Enter passphrase for RSA key 'admin@WS007594': shuba

<Comments> No output !!


admin@WS007594 ~/scripts
$ callconn.pl  connect_ws   ftp-rfc      shellscript   try
cfile.c      connect_ws~  perlfile.pl  shellscript1

<Comments> I typed ls - not echoed

admin@WS007594 ~/scripts
$ This is not seen

<Comments> I typed echo This is not seen - The command is invisible !!

admin@WS007594 ~/scripts
$


-----Original Message-----
From: Mark Paulus [ mailto:commpg@yahoo.com ]
Sent: Thursday, May 31, 2001 10:36 AM
To: cygwin@cygwin.com
Subject: Re: Calling SSH from Expect - URGENT


I believe this is a problem with the way tty's are handled under cygwin.  
I tried this script on a friend's debian box, and it also works as expected.

I think what's going on here is that somehow the ssh's stdin is getting 
"disconnected" from the expect terminal (I don't know whether the 
problem is expect's or ssh's though).  This is evidenced by the fact that
you are seeing the password that expect is typing.  Expect is typing 
the password into a standard stream, no a password enabled, character
hiding stream such as ssh would be using.   I have enclosed the output 
from my test session from debian, and you can see that there is no
password.

mpaulus@csu6223286:~
$ ./doit
spawn /usr/bin/ssh -l mgpaulus 24.221.196.205 ls -l
mgpaulus@24.221.196.205's password:
total 1356
drwxr-sr-x    2 mgpaulus mgpaulus     4096 Mar 12 23:35 News
drwxr-sr-x    2 mgpaulus mgpaulus     4096 Mar  8 23:13 bin
drwxr-sr-x    8 mgpaulus mgpaulus     4096 Mar 30 13:17 fetchmail-5.3.3

mpaulus@csu6223286:~
$ cat doit
#!/usr/bin/expect -f
spawn /usr/bin/ssh -l userid host "ls -l"
expect -re "word:"
send "password\r"
expect eof

mpaulus@csu6223286:~
$

On Wed, 30 May 2001 14:22:29 -0400, Simha, Shuba wrote:

>Hi Cygwin users,
>
>I am using Expect-5.26 from Cygwin-(not sure of the version)
>I am trying to connect to a remote host through SSH, & on the command line,
>it works just perfect. But when I write an "Expect" script for the same, it
>does not do anything.
>
>Here is the comand I use:
>	/bin/ssh -l username -p port hostname.abc.com "ls -l"
>It prompts for the passphrase, & when I enter it, it neatly lists the
>contents of my home dir. (username, port & hostname.abc.com actually have
>real values)
> 
>The Expect code fragment is below:
>
>#!/usr/bin/expect
>spawn /bin/ssh -l username -p port hostname.abc.com "ls -l" 
>expect -re "Enter passphrase for RSA key '.*': " 
>send "passphrase\r" 
>expect eof
>
>This however does not list anything, though it takes the passphrase.. (I
can
>see the passphrase being echoed on the screen)
>More surprisingly, as soon as the script ends, the monitor will go out of
>echo mode(I cannot see what I type!!)
>
>The same happens when I try SCP as well.
>
>Can anybody tell me whats wrong with what I am doing? 
>
>Thanks a lot on advance..
>-Shuba

--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list