use strict; use warnings; use 5.020; # -------------------------------------------------------------------------------------------------------------------------------- my $Zaehler_Values = @ARGV; print "Values : $Zaehler_Values" , "\n"; my $Schalter = $ARGV[ 0 ]; # print "Schalter : $Schalter" , "\n"; my $Aufruf_Schalter; my @Aufruf_Parameter; my %Aufruf_Testumgebung = ( ); for( my $i = 0; $i < $Zaehler_Values; $i++ ) { if ( $ARGV[ $i ] =~ m/-/) { print "Schalter : $ARGV[ $i ]" , "\n"; $Aufruf_Schalter = $ARGV[ $i ]; } if ( $ARGV[ $i ] !~ m/-/) { print "Parameter : $ARGV[ $i ]" , "\n"; push( @Aufruf_Parameter , $ARGV[ $i ] ); } $Aufruf_Testumgebung{ $Aufruf_Schalter } = \@Aufruf_Parameter; } &Verify_Verarbeitung( \%Aufruf_Testumgebung ); # -------------------------------------------------------------------------------------------------------------------------------- sub Verify_Verarbeitung { my( %Parameter ) = %{ $_[ 0 ] }; my @Test; my @Neu; if( exists $Parameter{ '-Modify' } ) { print "Gefunden"; @Test = @{ $Parameter{ '-Modify' } }; print $Test[ 0 ]; print $Test[ 1 ]; } if( exists $Parameter{ '-Neu' } ) { print "Gefunden"; @Neu = @{ $Parameter{ '-Neu' } }; print $Neu[ 0 ]; print $Neu[ 1 ]; } } # -------------------------------------------------------------------------------------------------------------------------------- Könnt ihr mir sagen warum ich in der Subroutine folgendes Ergebnis erhalte : [code] $ get_ops.pl -Modify test test -Neu voll cool Values : 6 Schalter : -Modify Parameter : test Parameter : test Schalter : -Neu Parameter : voll Parameter : cool Gefundentesttest Gefundentesttest