[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Debian] Problem mit Getopt::Long



Hallo zusammen,

ich habe ein Promlem mit Getopt::Long und bin mir nicht sicher, ob es sich 
hier um einen Bug oder ein Feature handelt?!
Es tritt bei der sh,bash,ksh,csh und tcsh auf. Wenn der nachfolgenden Code wie 
weiter unten unter Aufruf angegeben ausgeführt wird, dann bekomme ich ein 'if' 
mitgeliefert.

Wenn ich hinter den zu evaluierenden Ausdruck ein newline einfüge, dann wird 
mir kein if mitgeliefert. Scheinbar übergibt die Shell das für sie öffnende if 
mit an Perl. Unabhängig davon, ob ich mit =s oder :s arbeite. Oder mache ich 
da grundlegend etwas falsch oder habe etwas total mißverstanden?

eval 'exec perl -S $0 ${1+$@}' if $running_under_some_shell;

use Getopt::Long;

my $ref_GetOptions=0;
my %hsh_GetOptions=();

$i='';
$k='';
%optctl=("size" => \$offset,
         "length" =>\$length);

$ref=\%optctl;
GetOptions($ref, "size=i", "length:s");

$i= ${$ref->{size}};
$k= ${$ref->{length}};
print "$i,$k\n";


Aufruf: get_longopts.pl --size 1000000 --length

Ausgabe: 1000000,if


Viele Grüße,

Heiko@Home

-- 
UNIX ist benutzerfreundlich, es kommt halt auf die Benutzer an!



--
-----------------------------------------------------------
Um sich aus der Liste auszutragen schicken Sie bitte eine
E-Mail an debian-user-de-request@lehmanns.de die im Subject
"unsubscribe <deine_email_adresse>" enthaelt.
Bei Problemen bitte eine Mail an: Jan.Otto@Lehmanns.de
-----------------------------------------------------------

683 eingetragene Mitglieder in dieser Liste.


Reply to: