#!/usr/bin/perl -w ###Module einbinden### use strict; use Tk; ###Eingabemaske generieren### my $haupt = MainWindow->new(); $haupt->title('Zeilennummerierung'); my $links = $haupt->Frame(); ###Felder  in Eingabemaske### my ($input, $output); $links->Label(-text => "Eingabedatei: ") -> pack(); my $in = $links -> Entry(width=>50); $in->pack(-padx=>10,-pady=>20); $links->Label(-text => "Ausgabedatei: ") -> pack(); my $out = $links -> Entry(width=>50); $out->pack(-pady=>20); my $Schalter=$links->Button(-text => "Datei einlesen",-command=> \&einlesen)->pack(-side=>"left",-fill=>"both",-expand=>1); my $Schalter1=$links->Button(-text => "Eingabe löschen",-command=> \&loeschen)->pack(-side=>"left",-fill=>"both",-expand=>1); my $$chalter2=$links->Button(-text => "Beenden",-command=> [$haupt=>'destroy'])->pack(-side=>"left",-fill=>"both",-expand=>1); my $rechts= $haupt->Frame(); $rechts->Label(-text=>"Bearbeitungsvorgang:")->pack(); my $vorgang= $rechts->Listbox(width=>50); $vorgang->pack(-padx=>20,-pady=>20); $links->pack(-side=>"left"); $rechts->pack(-side=>"right"); MainLoop(); ### Datei einlesen und verarbeiten sub einlesen { my $eingabe  = $in->get(); my $ausgabe = $out->get();     if( open FILE, "< $eingabe" ){       if( open NEU, "> $ausgabe" ){                   while( ){                   print NEU $. ." $_";                       # $. = Zeilennummer von                                       # " $_" = aktuelle Zeile mit vorangestellten Leerzeichen                   }                   $vorgang->insert('end'," "."Es wurden $. Zeilen eingelesen und in $ausgabe geschrieben!");                             close NEU;                   }           close FILE;           } else{    die "Datei '$eingabe' konnte nicht geöffnet werden: $!\n"; } } sub loeschen{ my $ausgabe; $ausgabe->delete('0.1', 'end'); }