Zunächst einmal möchte ich Ihnen helfen, sich selbst zu helfen:
- Hilfe zu Perl finden Sie in der perldoc .
- Hilfe zu Perl-Modulen finden Sie unter CPAN .
Sie arbeiten hier mit dem Modul Expect, zu finden unter CPAN:Erwarten .
Aus rein syntaktischer Sicht rufen Sie lediglich zwei Methoden auf:
my $exp = Expect->new(); #Yes, the new Expect is a shorthand version
$exp->spawn("su");
Beide Methoden sind bei CPAN dokumentiert, und sie sind tatsächlich tun, was Sie erwarten (kein Wortspiel beabsichtigt) zu tun: der erste erstellt ein Expect-Objekt, der zweite startet einen Prozess "su" ohne Parameter.
Jetzt können Sie wahrscheinlich die Methoden send und expect verwenden, um eine Zeichenkette an den Prozess zu senden, oder warten, bis er nach einer Eingabe fragt. Direkt aus dem CPAN-Beispiel:
# send some string there:
$exp->send("string\n");
# then do some pattern matching with either the simple interface
$patidx = $exp->expect($timeout, @match_patterns);