PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : telnet login mit bash script



darktemplaaa
12-01-2012, 12:50
Hallo!

Ich habe mir folgendes Script zum Autologin für telnet sessions geschrieben:



#!/bin/bash

for host in `cat /root/telnet-script/hosts.txt` ; do
expect << EOF
spawn telnet $host
expect "username: "
send "USERNAME\r"
expect "password: "
send "SicheresPasswort\r"
expect -exact "-->"
send "users\r"
expect -exact "-->"
send "exit\r"
EOF
done;


ich möchte mir nun aber einige Rückgabewerte in eine Textdatei pipen z.B. alle user:



send "users\r" >> /root/users.txt


Nur klappt das ja leider so nicht weil ich noch in der expect Schleife bin. Hat einer eine Idee wie ich das trotzdem exportiert bekomme?

fork
21-01-2012, 16:48
Hi darktemplaaa,

ich hab' auch nur wenig Ahnung von Expect. Nach kurzem durchschauen, scheint eine Lösung aus folgenden Komponenten möglich zu sein:

- die letzte Ausgabe, also wahrscheinlich Deine Ausgabe von "users" ist in der Variable $expect_out(buffer)
- mit open kannst Du eine Datei zum schreiben öffnen
- mit puts kannst Du da hinein schreiben.

Wenn Du's einfacher haben willst, mußt Du wohl ein bisschen mehr wühlen.

Grüße,
fork