Guidainlinea.com - Risorse gratuite per Webmaster

| ASP | PHP | Download | Flash | NEWS | Grafica | .NET | Basi Banner | PhpNuke | Forum | Top100 | Webring |

 
100cocktails
   

 

 

 

 

 

 

Argomenti su riga di comando e variabili di ambiente

In molti casi può essere utile passare dei parametri sulla linea di comando al nostro script Perl. I parametri vengono immagazzinati automaticamente nell'array @ARGV: come per ogni altro array $#ARGV indica l'indice dell'ultimo elemento dell'array.

Supponiamo ad esempio di voler scrivere una versione molto semplificata del comando grep di UNIX. Ciò che vogliamo realizzare è uno script che stampi in output le righe dei file di testo della directory corrente che contengono la stringa passata come argomento al programma stesso. Quella che segue è una delle possibili implementazioni di questo programma:

#!/usr/local/bin/perl
# grep.pl: versione semplificata di grep
$ARGV[0] || die "Non e' stato specificata la stringa da cercare\n\n";
@file = `ls -1`;
chop(@file);
foreach $file (@file) {
  -T $file || next;
  open(IN, "< $file") || next;
  while ($r = <IN>) {
    $r =~ /$ARGV[0]/ && print "$file: $r";
  }
  close(IN);
}

L'esempio precedente è sicuramente sovradimensionato per illustrare l'uso dell'array @ARGV, ma può essere utile per richiamare vari concetti visti in precedenza.

Un altro dato che spesso può risultare assai utile è costituito dalle variabili di ambiente, ossia quelle variabili impostate a livello di shell che possono essere utilizzate anche all'interno del programma Perl che le "eredita". Le variabili di ambiente sono memorizzate dall'interprete nell'array associativo %ENV; la chiave per indicizzare gli elementi dell'array è il nome della variabile stessa. Ad esempio la variabile $ENV{term} contiene il tipo di terminale utilizzato dall'utente; la variabile $ENV{path} contiene il path di ricerca delle applicazioni sul sistema dell'utente. Chiaramente impostando un valore nell'array associativo %ENV si imposterà una variabile d'ambiente ereditata anche dai processi richiamati dallo script Perl.

Lezione successiva =>

Torna all'indice

 

 

 

 

.:: Le sezioni ::.

 .: HTML
 .:
ASP
 .:
PHP
 .:
CSS
 .:
.NET
 .:
CGI/PERL
 .:
Flash
 .:
Download
 .:
JavaScript
 .:
FrontPage
 .:
DreamWeaver
 .:
IIS
 .:
PaintShop Pro
 .:
SQL
 .:
VisualBasic
 .:
XML.NET
 .:
PHPNuke
 .:
PhotoShop
 .:
Basi banner

.:: Script & File ::.

 .: ASP
 .:
.NET
 .:
PHP
 .:
CGI/PERL
 .:
Movies
 .:
Basi Banner
 .:
Programmi

.:: FAQ ::.

 .: ASP
 .:
HTML
 .:
PHP
 .:
CSS

.:: Tutorials ::.

 .: ASP
 .:
PhotoShop
 .:
Flash
 .:
JavaScript

 

 

Guidainlinea.com come homepage |  Aggiungi questa pagina ai preferiti
Home | Manuali | EBooks | Libri | NewsLetter | Community | Corsi | Shopping | Guadagna | Servizi | Mandaci il tuo tutorial | Links
Per qualsiasi informazioni scrivi alla Redazione al Webmaster o per informazioni generali ad info@manuali.net - Note Legali