Skip to content

Instantly share code, notes, and snippets.

@tacitochaves
Last active August 29, 2015 14:05
Show Gist options
  • Select an option

  • Save tacitochaves/9201fb8c1adefeb8b385 to your computer and use it in GitHub Desktop.

Select an option

Save tacitochaves/9201fb8c1adefeb8b385 to your computer and use it in GitHub Desktop.
Escolhendo o tipo de hardening
#!/usr/bin/env perl
use strict;
use warnings;
# inicialização de variáveis
my $m;
my @options;
# vai rodar enquanto a opção 3 do menu não for solicitada
do {
# chama a função menu
$m = &menu;
# inicia a flag
my $has_opt;
# insere na flag as opções ki inserirem no menu
$has_opt = grep { /$m/ } @options;
# se na flag estiver com algo diferente de 0 é pq a opção já foi usada
if ( $has_opt ne 0 ) {
print "Hardening já foi realizado!!\n";
}
else {
if ( $m eq 0 ) {
&hardening_0;
unshift( @options, $m );
}
elsif ( $m eq 1 ) {
&hardening_1;
unshift( @options, $m );
}
elsif ( $m eq 2 ) {
&hardening_2;
unshift( @options, $m );
}
elsif ( $m eq 3 ) {
exit(0);
}
else {
print "Opção Inválida!!\n";
}
}
} while ( $m ne 3 );
# função para o menu principal
sub menu {
print "#" x 50 . "\n";
print " Programa de Seleção de Hardening - 2014\n";
print "#" x 50 . "\n";
print "Por favor, escolha a oçção desejada.\n";
print "\n";
print "0 - Para o primeiro hardening\n";
print "1 - Para o segundo hardening\n";
print "2 - Para o terceiro hardening\n";
print "3 - Para sair do sistema\n";
print "\n";
print "\n";
chomp( my $option = <STDIN> );
return $option;
}
# função para os tipos de hardening
sub hardening_0 {
print "Está dentro do bloco de comandos do hardening 0\n";
}
sub hardening_1 {
print "Está dentro do bloco de comandos do hardening 1\n";
}
sub hardening_2 {
print "Está dentro do bloco de comandos do hardening 2\n";
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment