use Getopt::Long qw( GetOptions ); Getopt::Long::Configure( ); my $Identifier_Options_Hilfe; my $Identifier_Options_NoSSL; my $Identifier_Options_SQL; my $Identifier_Options_Verify; my $Identifier_Options_Module; # ---------------------------------------------------------------------------------------------------------------------------- use Getopt::Long qw(GetOptions); Getopt::Long::Configure( qw( posix_default no_ignore_case ) ); GetOptions( 'Help' => \$Identifier_Options_Hilfe , 'Module:s' => \$Identifier_Options_Module , 'NoSSL:s' => \$Identifier_Options_NoSSL , 'SQL:s' => \$Identifier_Options_SQL , 'Verify:s' => \$Identifier_Options_Verify , ) or print "Falscher Parameter"; if ( defined $Identifier_Options_Hilfe ) { print "\n"; print "Parameter fuer die Ausfuehrung des Servers in der Konsole :" , "\n"; print "\n"; print "-Help Einblendung dieses Hilfe - Oberflaeche" , "\n"; print "-NoSSL Aktivierung der SSL - Verschluesselung fuer die Verbindung" , "\n"; print " Moegliche Schalter : 0 ( AUS ) oder 1 ( EIN )" , "\n"; print "\n"; print " WARNUNG : Keine Empfehlung fuer unsichere Verbindung" , "\n"; print "\n"; print "-SQL Re - Initialisierung der SQL - DB" , "\n"; print "-Verify Uebepruefung aller notw. Module ( ohne Ausfuehrung )" , "\n"; print "\n"; print " Moegliche Schalter : o Interfaces" , "\n"; print " o Paths" , "\n"; print " o SQL" , "\n"; print " o SSL" , "\n"; } elsif ( defined $Identifier_Options_Hilfe ) { print "Fehler bei der Erkennung der Parameter : Fehler - Code 1002" , "\n"; } # ---------------------------------------------------------------------------------------------------------------------------- if ( defined( $Identifier_Options_NoSSL ) ) { if( $Identifier_Options_NoSSL eq "Yes" ) { print "Aktivierung der SSL - Verschluesselung !" , "\n"; } if( $Identifier_Options_NoSSL eq "No" ) { print "Deaktivierung der SSL - Verschluesselung !" , "\n"; } if( $Identifier_Options_NoSSL ne "Yes" && $Identifier_Options_NoSSL ne "No" ) { print "Falscher Parameter !" , "\n"; } } elsif ( defined $Identifier_Options_NoSSL ) { print "\n"; print "Fehler bei der Erkennung der Parameter : Fehler - Code 1003" , "\n"; } # ---------------------------------------------------------------------------------------------------------------------------- if ( defined( $Identifier_Options_Verify ) ) { if( $Identifier_Options_Verify eq "Paths" ) { my $Pruefung_Module_Paths = "Paths"; &Verify_Modules( $Pruefung_Module_Paths ); } if( $Identifier_Options_Verify eq "SQL" ) { my $Pruefung_Module_SQL = "SQL"; &Verify_Modules( $Pruefung_Module_SQL ); } if( $Identifier_Options_Verify eq "SSL" ) { my $Pruefung_Module_SSH = "SSH"; &Verify_Modules( $Pruefung_Module_SSH ); } if( $Identifier_Options_Verify ne "Paths" && $Identifier_Options_Verify ne "SQL" && $Identifier_Options_Verify ne "SSL" ) { print "Falscher Parameter !" , "\n"; } } elsif ( defined $Identifier_Options_Verify ) { print "\n"; print "Fehler bei der Erkennung der Parameter : Fehler - Code 1004" , "\n"; } # ---------------------------------------------------------------------------------------------------------------------------- sub Verify_Modules { my $Identifizierung_Module_Pruefung = $_[ 0 ]; if( $Identifizierung_Module_Pruefung eq "Paths" ) { print "Prueefung der Verzeichnisse des Servers !" , "\n"; } if( $Identifizierung_Module_Pruefung eq "SQL" ) { print "Prueefung der SQL - Verbindung & der DB !" , "\n"; } if( $Identifizierung_Module_Pruefung eq "SSH" ) { print "Prueefung der SSH - Verbindung !" , "\n"; } } # ----------------------------------------------------------------------------------------------------------------------------