Thread Parameter über SHELL an PERL-Script übergeben (3 answers)
Opened by Gast at 2008-05-21 17:25

renee
 2008-05-21 17:30
#110069 #110069
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
String-Vergleiche macht man in Perl mit eq und die Strings müssen in Anführungszeichen gepackt werden.

Code (perl): (dl )
1
2
3
4
5
6
7
if( $ARGV[0] eq 'job1' ){
    sub1();
}
elsif( $ARGV[0] eq 'job2' ){
    sub2();
}
#...


Wenn ich solche if-elsif-Konstrukte sehe, denke ich gleich an Dispatcher...

Hier mal mit einem einfachen Hash:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
my %dispatch = (
    job1 => \&sub1,
    job2 => \&sub2,
);

my $sub = \&default_sub;

$sub = $dispatch{ $ARGV[0] } if exists $dispatch{ $ARGV[0] };
$sub->();


Edit: das vergessene $sub->(); hinzugefügt...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/

View full thread Parameter über SHELL an PERL-Script übergeben