Re: [maillist] Eingabe an laufendes PRogramm

Frank Schneider (SPATZ1@t-online.de)
Sun, 05 Sep 1999 12:28:34 +0200

Tim Hilden wrote:
>
> Hallo,
>
> ich wollte per Telnet und einem Skript einige Mails verschicken. Nur
> habe ich das Problem, dass wenn ich die Befehle einfach in ein Skript
> untereinander schreie, werden diese nicht an das laufende Telnet
> übergeben, sondern erst nach Beenden des Telnets aufgeführt. Natürlich
> kommen dann nur Fehlermeldungen, was soll Linux denn mit HELO anfangen?
> Ich habe mir also gedacht, dass ich die Standart Eingabe (stdin) von der
> bash auf mein laufendes Telnet verlegen musste. Aber wie mache ich das
> meinem Skript klar?

Hallo...

Für sowas gibts EXPECT. Das ist ein Zusatzpaket für Tcl/Tk und macht
genau das:

---------Beispiel-Ausriß---------
#!/usr/bin/expectk -f

# Globaler Timeout:

set timeout 15

#Verbindungsaufnahme zu <HOST.DELIX.DE:
#Login normal
spawn telnet <host.delix.de>
expect {*Username:*}
exp_send "pclinux\n"
expect {*Password:*}
exp_send "lalal\n"

#Switch to ROOT:
expect {*host}
exp_send "su -\n"
expect {*Password:*}
exp_send "blabla\n"

expect {*host:[/root] #*}

...

exit
----------end------------------

Ohne einführendes Buch ist das allerdings etwas schwer. Als Buch gibts
"Exploring Expect" z.b.

Vielleicht weiß auch jemand hier eine URL, wos nen .PDF-File gibt oder
so...

Ansonsten ist das aber *das* Tool...ich automatisiere damit z.b. aucg
ftp-Connects, Downloads, etc...

Solong..
mfg Frank.

--
Frank Schneider, <SPATZ1@T-ONLINE.DE>.                           
-Linux, because: Who needs Gates in a fenceless World ??
... -.-