Sui sistemi che supportano getpwuid, la variabile $<, ed il modulo
Sys::Hostname (che è incluso nella distribuzione standard del perl),
potete probabilmente provare ad utilizzare qualcosa come:
use Sys::Hostname;
$address = sprintf('%s@%s', scalar getpwuid($<), hostname);
Le politiche aziendali sugli indirizzi e-mail possono far sì che questo
codice generi indirizzi che il sistema di posta aziendale non accetta,
dunque dovrete chiedere gli indirizzi direttamente agli utenti, quando vi servono.
Inoltre, non tutti i sistemi su cui gira Perl rendono disponibili
queste informazioni come fa Unix.
Il modulo Mail::Util da CPAN (parte del pacchetto MailTools) fornisce una
funzione mailaddress() che cerca di supporre l'indirizzo e-mail dell'utente.
La supposizione è più intelligente rispetto al codice sopra
riportato, poiché fa uso di informazioni fornite al modulo al
momento dell'installazione, ma potrebbe essere anch'essa errata. Ancora,
il modo migliore è spesso quello di chiedere all'utente.
Copyright (c) 1997, 1998, 1999, 2000, 2001 Tom Christiansen e Nathan
Torkington. Tutti i diritti riservati.
Questa documentazione è libera; puoi ridistribuirla e/o
modificarla secondo gli stessi termini applicati al Perl.
Indipendentemente dalle modalitè di distribuzione, tutti gli esempi di
codice in questo file sono rilasciati al pubblico dominio. Potete, e
siete incoraggiati a farlo, utilizzare il presente codice o qualunque
forma derivata da esso nei vostri programmi per divertimento o per profitto.
Un semplice commento nel codice che dia riconoscimento alle FAQ sarebbe cortese
ma non è obbligatorio.
mongers@perl.it è la lista ufficiale di Perl Mongers Italia per
porre quesiti di tipo tecnico, per rimanere aggiornato su meeting,
incontri, manifestazioni e novità su Perl.it. Iscriviti!