Perl - Função GetOptions

Publicado por Perfil removido em 26/04/2013

[ Hits: 5.057 ]

 


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

KDE Plasma e os tipos de hackers envolvidos com Linux

Vídeo aula: Como instalar o Skype no Ubuntu 13.10

Alterando o wallpaper rapidamente no Kurumin

Pasta Trash no KDE 4.4.5

Convertendo imagens e documentos em texto puro (.txt)

Leitura recomendada

Resgatando dados de um formulário com Ruby e CGI

Programação Perl para iniciantes

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

Arch Linux: /etc/rc.sysinit mountpoint not found

Transferir arquivos via Arch Linux para Galaxy S8

  

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