Perl - Função GetOptions

Publicado por Perfil removido em 26/04/2013

[ Hits: 4.814 ]

 


Perl - Função GetOptions



A função GetOptions() do módulo Getopt::Long, é uma função que ajuda muito quando se quer passar argumentos para o script através da linha de comando.

Exemplo de utilização simples:

#!/usr/bin/perl

use warnings;
use strict;
use Getopt::Long;

my ($arg,$int,$float);  # Declarando variaveis

GetOptions( 'string=s' => \$arg,  # o "s" significa que a variavel é uma string
'inteiro=i' => \$int,  # o "i" significa que a variavel é um inteiro
'float=f' => \$float  # o "f" significa que a variavel é um "ponto flutuante"
);

if(defined($arg) || defined($int) || defined($float)){  # Se os argumentos string, inteiro e float existirem imprime eles na tela
print "string = $arg\ninteiro = $int\nPonto flutuante = $float\n";
} else {
die "Modo de uso : getopt.pl --string <string> --inteiro <numero> --float <numero>";
}


Exemplos de uso:

perl getopt.pl --string LOL --inteiro 1 --float 666
Ou:
perl getopt.pl -string LOL -inteiro 1 -float 666
Ou:
perl getopt.pl --string=LOL --inteiro=1 --float=666

O script irá imprimir:
string = LOL
inteiro = 1
Ponto flutuante = 666

Argumentos sem valor (exemplo: "script.pl --help"):

GetOptions('help' => \$variable);


Argumentos com múltiplos valores (exemplo: "script.pl -host alvo -host alvo2"):

GetOptions('host=s' => \@variable);


Argumentos com múltiplos nomes (exemplo: "script.pl --help" ou "script.pl -h"):

GetOptions('help|h' => \$variable);



É isso aí, não tem muito o que dizer.

A utilização da função GetOptions() é bem simples. Se alguém tiver alguma dúvida, é só falar. *-*

[]'s

Dica também publicada em: The BlackHats: Função Getoptions no Perl

Outras dicas deste autor

Firefox + Opera: Operafox!

Google Chrome no Mageia Linux

Instalando o MATE no Arch Linux

Como adicionar swap no Linux CentOS 7 usando espaço de um Volume Group

Descubra se um pacote de software existe nos repositórios de sua distribuição

Leitura recomendada

Solicitando uma conta no CPAN para colaborar com módulos Perl

Programação Perl para iniciantes

Resgatando dados de um formulário com Ruby e CGI

resize2fs: Permission denied to resize filesystem [RESOLVIDO]

Monitorando o Squid pelo navegador

  

Comentários

Nenhum coment�rio foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts