Chamadas de um script Perl
Para poder executar e testar scripts próprios, precisa-se de um interpretador PERL é o acrônimo de Practical Extraction and Report Language. A linguagem surgiu em 1987 no universo UNIX. A linguagem é obra de uma única pessoa, Larry Wall, um guru. Até os dias de hoje, Wall continua liderando o aperfeiçoamento da sintaxe da Perl. Para utilizar a Perl como linguagem de scripts CGI, também há a necessidade de um servidor web instalado. Em geral, os provedores de serviços que hospedam sites oferecem estes serviços.
O interpretador Perl pode ser chamado através de um script Perl, ou seja, um arquivo que contenha código Perl. Tais arquivos possuem habitualmente a terminação padrão .pl. O interpretador Perl normalmente é iniciado simplesmente com perl. Por exemplo, se existir um script Perl de nome valeu.pl, este pode ser iniciado com perl valeu.pl. Em alguns casos, há a necessidade de se indicar o caminho (path) do script, por exemplo, c:\www\bin\perl.exe c:\scripts\perl\valeu.pl
(no exemplo, usando-se a sintaxe do Windows num computador local).
Existem várias opções nas chamadas do interpretador Perl. As opções seguem imediatamente após o nome do interpretador e antes do nome do script, algo como perl -c teste.pl. Pode-se também utilizar diversas opções em sequência. Para isso, utiliza-se um sinal de menos seguido de todas as opções desejadas, por exemplo perl -cwT teste.pl.
A lista a seguir contém importantes opções para a chamada do interpretador Perl:
Opção | Significado |
-c | O script Perl não é executado, apenas há uma verificação da sua sintaxe. |
-d | O script Perl é executado no modo debug. Este modo permite testar o script. |
-S | Não há necessidade de se indicar o caminho (path) do script. Se estiver num diretório que conste da variável Path do sistema, o interpretador Perl encontra o script mesmo sem a indicação do caminho./td> |
-T | Enquanto é executado, o script é submetido a uma criteriosa verificação de erros. |
-v | Retorna a versão do interpretador. |
-w | Faz com que o interpretador, além de mostrar as mensagens de erro, também envie avisos sobre possíveis erros e sequências duvidosas de diretivas lógicas. |
Dica: Caso você queira testar os exemplos deste tutorial, copie-os e os transfira para um editor de texto. Grave o conteúdo num arquivo, por exemplo, teste.pl. Chame o interpretador Perl atrelando este arquivo na chamada. Faça preferencialmente a chamada em nível de DOS ou Unix/Linux-Shell porque muitos dos exemplos utilizam a saída padrão.
Regras para scripts e comentários Perl
Os scripts Perl podem ser produzidos em qualquer editor ASCII. O ideal é utilizar um editor de programação que possa ser configurado para otimizar a programação em Perl.
Salve seus scripts Perl com nomes seguidos da extensão .pl
.
Para compor um script Perl existe apenas uma regra fixa: a primeira linha do script precisa indicar a localização do interpretador.
Exemplo de um script Perl completo:
#!/usr/bin/perl print "Valeu! Sou um script Perl\n";
A indicação da localização do interpretador Perl inicia-se com os sinais #!, seguidos do caminho (path). A partir daí pode-se inserir todas as diretivas na linguagem Perl que se desejar, assim como no exemplo acima as palavras "Valeu! Sou um script Perl" são enviadas para a saída padrão através do comando print.
A indicação da localização do interpretador é avaliada principalmente por sistemas Unix e Unix-compatíveis na ocasião em que o arquivo Perl é colocado no modo "executável". O arquivo, então, pode ser chamado diretamente e inicializa o interpretador. Se o ambiente de trabalho for outro que o Unix/Linux, anote assim mesmo o caminho habitual (#!/usr/bin/perl) na primeira linha. Caso o script não seja executado, substitua a linha pelo caminho correto utilizando sempre o sinal de barra (não de barra invertida) mesmo em se tratando de sistemas DOS/Windows.
A linha contendo o caminho do interpretador é também uma linha de comentário de acordo com a sintaxe Perl. Comentários são iniciados com o sinal #. Tudo que estiver entre este sinal e o final da respectiva linha é ignorado pelo interpretador Perl. Em comentários que ocupem mais de uma linha, todas elas precisam do sinal inicial #.
Diretivas na Linguagem Perl
A Perl, assim como outras linguagens de programação, é composta por uma sequência ordenada de diretivas. São comandos que o interpretador Perl processa e transforma em código de máquina.
Existem diretivas simples e complexas. Exemplos:
#!/usr/bin/perl $Numero = 42; $Quadrado = $Numero * $Numero; print "O quadrado de ", $Numero, " = ", $Quadrado, "\n";
Uma diretiva em Perl é composta por um comando que, normalmente, é terminado com um ponto-e-vírgula.
Usa-se uma diretiva, por exemplo,
- quando se atribui um valor a uma variável, como no exemplo acima a diretiva
$Numero = 42;
- quando se efetua uma operação que envolva variáveis, como na segunda diretiva do exemplo acima
- quando um função Perl é chamada, como na terceira diretiva do exemplo acima
Blocos de Diretivas
Um bloco é constituído por diretivas contidas numa diretiva hierarquicamente superior. Um bloco de diretivas pode, por exemplo, estar contido numa diretiva condicional ou numa alça (loop). Todas as diretivas contidas numa subrotina também se constituem num bloco de diretivas.
Exemplo 1:
if($Numero > 1000) { $Numero = 0; }
Exemplo 2:
while($i <= 99) { print "O quadrado de ", $i, " é ", $i * $i, "\n"; $i = $i + 1; }
Um bloco de diretivas é iniciado através de um chave de abertura { e terminado através de uma chave de fechamento }.
Nas diretivas condicionais (como no exemplo 1) ou nos laços (como no exemplo 2), estes blocos sempre precisam estar contidos entre chaves, mesmo quando o bloco é constituído por apenas uma diretiva.
Um bloco de diretivas também pode conter outros blocos.
Notação de Nomes em Perl
Em muitos pontos de um script Perl há a necessidade de criar nomes, por exemplo nomes de variáveis:
$Dados = $ENV{'QUERY_STRING'};
Para criar nomes existem as seguintes regras:
- não podem conter espaços
- devem ter, no máximo, 32 caracteres
- só podem ser constituídos por letras e números - o primeiro caracter deve ser uma letra; são permitidas letras maiúsculas e minúsculas
- não podem conter caracteres especiais como ü, ç, ã, etc
- apenas o sinal de sublinhado _ é permitido como caractere especial
Use nomes que possam ser identificados com facilidade e que indiquem com clareza sua função. Lembre-se de que você pode precisar revisar um script depois de alguns meses. Fica mais fácil entender uma variável denominada $NroDeAcessos
do que uma identificada por $x
.