mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.perl
Titolo: Help uregente ftp senza moduli aggiunt

come posso? Credo con LWP... ma proprio non capisco come!... Devo anche
autenticarmi.
Spero in un mini esempio di prelievo e inserimento file.
Grazie 1000 !!!!!
Oxy
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
http://www.grisoft.com
).
Version: 6.0.465 / Virus Database: 263 - Release Date: 25/03/2003



perldoc Net::FTP
E brevemente, giusto per una piccola indicazione:
---CUT HERE---
use Net::FTP;
my $ftp = Net::FTP->new('
yourhost.it
');
$ftp->login('user','password');
$ftp->get('some.file');
$ftp->quit;
---CUT HERE---
by 
	- Enrico

 ---CUT HERE---
questo l'ho visto... ma non e' un modulo aggiuntivo???
Grazie

 ---CUT HERE---
 sempre che lo possa utilizzare... ma  non capisco... nell'esempio prelevo
il file..
ma poi come  lo uso? se lo volessi scriverlo o visualizzare come faccio??
perdonami ma sono quasi a zero... sono un opportunista del Perl, lo uso ogni
tanto ma no lo conosco :-/
Ciao


 - Enrico
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
http://www.grisoft.com
).
Version: 6.0.465 / Virus Database: 263 - Release Date: 26/03/2003

Newsgroup: it.comp.lang.perl
Titolo: HELP: PERL on CD

I am trying to learn PERL on Solaris UNIX.   My company uses Solaris 2.7/7.0
and I thought I would teach myself PERL to use for scripts.  I have an older PC
that I plan to use.  I got a copy of Solaris UNIX from Sun for about 20 bucks. 
 The PC does not have C or an internet connection where I can download a binary
version.
Is there anywhere that I can get PERL on CD?   This would help me tremendously.
  TIA

 wrote in message
20000402181340...@ng-cc1.aol.com...

Have you try to go to 
www.activestate.com
?
You may download a binary copy of perl and order for 39.95USD a CD rom
Version here: 
http://www.activestate.com/ActivePerl/ActivePerlCD.htm
Good luck!
EP
Newsgroup: it.comp.lang.perl
Titolo: Trovare una determinata stringa con una regex

Salve,
mi rivolgo a voi perchè so che siete molto preparati.
Allora io ho una situazione di questo genere:
devo trovare nella stringa "xxxx_yyyy", "xxxx" e "yyyy" di lunghezze e
di contenuto variabili il tutto con una regex.
So che dovrebbe essere semplice ma io non riesco.
Ringrazio anticipatamente.

di contenuto variabili
http://www.perl.it/documenti/articoli/2005/11/espressioniche.html
Un articolo davvero esauriente e scritto con la solita precisione e simpatia 
di Polettix :)
Saluti
Anak
anak[at]
cpan.org
softwareE=mc^
2...@netlogica.it
(eliminare l'eq per risp in prv) 

 di contenuto variabili il tutto con una regex.
Sembrerebbe un compito per split():
++++
my $string = "xxxx_yyyy";
my @chunks = split /_/, $string;
# in $chunks[0] trovi "xxxx";
# in $chunks[1] trovi "yyyy";
++++
[non ho testato il codice]
s.
-- 
Stefano Rodighiero      |  
http://www.stefanorodighiero.net
mailto:
lar...@perl.it
   |  Italian Perl Mongers: 
http://www.perl.it

On 30 Giu, 15:36, 
stefano.rodighi...@gmail.com
 (Stefano Rodighiero)
wrote:

Gia, ovvia soluzione, ma mi ero dimenticato di dire che questa stringa
è inserita in una pagina web che leggo tramite LWP.

 (eliminare l'eq per risp in prv)
grazie tante ma intanto ho risolto con (.+)_(.+)

 grazie tante ma intanto ho risolto con (.+)_(.+)
Così però qualsiasi trattino sarà considerato dalla regexp, consiglio
di definire il problema in modo più dettagliato per evitare (evitarti)
sorprese
Newsgroup: it.comp.lang.perl
Titolo: come leggere un file?

scusate la domanda... ma sono un principiante.
Vorrei leggere ogni riga di un file.
come si fà?
Grazie in anticipo, Mario.

Vorrei leggere ogni riga di un file.
Nel paragrafo "Files and I/IO" sono descritti un paio
di metodi per fare quello che chiedi.
ciao
Stefano

 come si fà?
open (INPUT "< ilmiofile.txt")
  or die "Non ne vuole sapere di aprirsi, sto file!\n";
while (<INPUT>) {
  print $_;
  }
close (INPUT);
  ciao
Raffaello

   or die "Non ne vuole sapere di aprirsi, sto file!\n";
   Io sono uso far stampare alla die anche il motivo per il quale essa 
e` stata invocata, contenuto nella variabile globale $!. Inoltre, evito 
di terminare la stringa con il carattere di newline, in modo che die mi 
stampi anche il numero di linea dello script dove e` accaduto il 
"fattaccio".
	$ perldoc -f die
   Ovviamente, sono mie considerazioni personali... ;)
-- 
Alla prossima,
Marco



 open (INPUT "< ilmiofile.txt")
   or die "Non ne vuole sapere di aprirsi, sto file!\n... sara' mica
perche' $! ???";
:P
 Raffaello

 :P
   ROFL!
-- 
Alla prossima,
Marco

Usate $^E che è più figo :-)
--
perl -MLWP::Simple -e "getprint(' 
http://perl.4pro.net
 ')"

Newsgroup: it.comp.lang.perl
Titolo: inserire immagine jpg in campo BLOB da remoto. Come?

Ciao a tutti
vorrei attraverso una pagina html con un modulo scegliere una foto dal mio
disco e inviarla ad uno script perl che me la metta in un campo BLOB del mio
database mysql, ma non riesco.
Non capisco se devo necessariamente prima salvare la foto nella cartella
dello script remoto (e questo riesco) e poi inserirla nel db (questo non
riesco) oppure se � possibile saltare un passaggio ed inserirla direttamente
nel db senza salvarla, ma non s� come posso fare.
So che la cosa � possibile, perch� con PhpMyAdmin posso attraverso un
pulsante selezionare un file e lui me lo inserisce nel DB. 

Grazie per la risposta.
Per me non � un problema caricare l'immagine jpg sull'HDD remoto.
Ma a questo punto in perl come faccio a leggerla e metterla nel DB ?
Ho fatto un paio di prove ma non sono riuscito.
Una curiosit�, perch� PHP invece riesce a inserirla direttamente senza 
salvarla sull'HDD remoto ? 

 Ho fatto un paio di prove ma non sono riuscito.
E che prove hai fatto? E, soprattutto, hai letto la documentazione? Su
perldoc DBI c'� una sezione intitolata "Handling BLOB/LONG/Memo Fields".
Ad ogni modo, se -come spero- usi i placeholder, l'INSERT o l'UPDATE di un
BLOB non richiede procedure particolari diverse dalla consueta sequenza
prepare/execute. 
Max

 
Non credo d'aver capito tutto ma mi vengono in mente 2 soluzioni:
INSERT INTO IMMAGINI (id, immagine) VALUES (1, LOAD_FILE('/path/immagine'));
oppure codifichi tutto in base64 e successivamente decodifichi
Newsgroup: it.comp.lang.perl
Titolo: Help date!

Purtroppo non riesco a:
    controllare se una data esiste (con le ER trovo se è teoricamente
corretta)
    aggiungere a questa data GG MM AAAA definiti
Grazie

 wrote in message 9v4jbh$qst$1...@pinco.nettuno.it...

Ti consiglierei il modulo Date::Calc, ma ho sentito dire
qualche volta che e` un modulo grosso e lento.
Non avendolo mai usato, non sono in grado di
sottoscrivere o negare questa tesi. Eventualmente facci
sapere.
Prova a leggere qui:
http://www.perlmonks.org/index.pl?node_id=127081
ciao
Stefano

Newsgroup: it.comp.lang.perl
Titolo: invio file al client

Ho un file avi su una parte del disco del server web.
Vorrei uno script Perl che richiamato prelevasse questo file avi e lo
inviasse allo client fancedolo scaricare.
Si può realizzare una cosa simile???
Grazie a quanti risponderanno
Reply su 
emanuele...@virgilio.it

 Grazie a quanti risponderanno
Perché vorresti che uno script "prelevasse" il file e lo inviasse al client?
Non puoi usare un link diretto al file?
dd

Non puoi usare un link diretto al file?
Se leggi i messaggi precedenti, ha gia' spiegato ampiamente perche' non
puo'. Io sinceramente non ho capito, ma lui sinceramente ha spiegato.
Ciao.
P.S. E non proporgli FTP, perche' s'incazza.

Newsgroup: it.comp.lang.perl
Titolo: perl2exe

Salve a tutti,
c'e' qualcuno che sta' facendo esperimenti con perl2exe??
Io sotto win32 riesco a compilare, sulla mia macchina linux
anche, ma ho dei problemi quando trasferisco i compilati
su macchine linux remote, cioe' su macchine differenti
da quella dove e' stata compilata l'applicazione.

da quella dove e' stata compilata l'applicazione.
E` possibile che sulla machcina remota manchino alcune librerie.
Prova a dare:
ldd nomefilecompilato
per vederne le dipendenze.
	Michele.
-- 
Michele Beltrame
mi...@io.com
http://www.io.com/~mick/

da quella dove e' stata compilata l'applicazione.
Devi trasferire anche delle librerie, non ricordo quali però! :-(
Ciao
Andrea Busia
No Spam, Grazie.
Newsgroup: it.comp.lang.perl
Titolo: Variabili our

Supponendo che abbia un progamma simile:
#v+
#!/usr/bin/perl
# programma 
pippo.pl
require pluto;
our $paperino;
$paperino = 'paperina';
pluto::stampa;
#v-
#v-
package pluto;
#libreria 
pluto.pm
sub stampa {
   print "$paperino\n";
}
#v-
Come faccio a far vedere la variabile $paperino al package 
pluto.pm
 ?
Se non sbaglio divrei inserire un `require pippo` in 
pluto.pm
, ma non
saprei come, considerando anche che 
pippo.pl
 diventera` pippo
Henryx
P.S. scusate per la niubbosita` della domanda, ma non sono riuscito a
trovare una risposta al problema
-- 
GnuPG fingerprint = 42F9 521B 63C7 89FE 354C  89FA 4E49 3E2D 2EB6 B014

 pluto::stampa;
Questa bareword non gli piace. Puoi risolvere in due modi:
  i. scrivendo pluto::stampa(), cioe` esplicitando che si
     tratta della chiamata di una subroutine
ii. usando use al posto di require per caricare 
pluto.pm
,
     forzando cosi` il require implicito affinche` avvenga
     a tempo di compilazione.
Per ulteriori dettagli a questo proposito:
   perldoc -f use
   perldoc -f require
Comunque sto divagando, e tu hai chiesto un'altra cosa.
Quando scrivi
   our $paperino;
   $paperino = 'paperina';
stai dichiarando e definendo una variabile globale all'interno
del package main. Per vederla da un altro package, nel tuo caso
il package, pluto, devi scrivere il nome completo della variabile,
vale a dire il nome comprensivo di package e nome della variabile.
Cosi`, nella sub pluto::stampa():
    print "$main::paperino\n";
main:: per la cronaca, e` un package particolare, che consente di
usare un nome abbreviato:
    print "$::paperino\n";
Sono stato un po' stringato. Se vuoi ulteriori spiegazioni, sono
a disposizione.
+++
Secondo me, pero`, quello che stai cercando di fare non e` una
buona idea. Stai scrivendo un modulo incorporando informazioni
relative ad un altro modulo (cioe` il fatto che nel package
chiamante main:: esiste la variabile $paperino). In questo modo
stai condannando 
pluto.pm
 ad essere usato sempre e soltanto dal
package main, e solo se in tale package esiste $paperino.
Una condanna per l'eternita`, che ti impedira` di usare il
modulo 
pluto.pm
 in altri contesti, cosa che butta a mare tante
delle buone ragioni per cui una persona di solito si mette
a scrivere moduli.
Molto meglio fare in modo che a pluto::stampa venga passata una
variabile:
   sub stampa {
     my $str = shift;
     print "$str\n";
   }
ciao
Stefano

 variabile:
Il problema e` il contesto in cui utilizzero` questo metodo di
chiamata (e cioe` la creazione di una istanza ad un database).
Praticamente vorrei creare una connessione ad un db dal modulo
main in maniera tale che sia univoca per tutta la durata della
sessione del programma, evitando cosi` l'apertura di un numero
imprecisato di connessioni, basato sul numero di statement che
verranno eseguiti nell'esecuzione del programma
Henryx


 verranno eseguiti nell'esecuzione del programma
Detta cosi`, mi pare che tu stia cercando di fare un singleton.
 
http://search.cpan.org/author/ABW/Class-Singleton-1.03/Singleton.pm
ciao,
Stefano
Newsgroup: it.comp.lang.perl
Titolo: parseInt ?

Ciao,
esiste una funzione in PERL tipo "parseInt()" o equivalente?
Grazie!!!
Devil

Intendevo la funzione parseInt di javascript ...
esiste in PERL una funzione equivalente??
Grazie
Devil


 Intendevo la funzione parseInt di javascript ...
  Questo newsgroup ha come topic il PERL, per cui non e` detto che i
partecipanti conoscano JavaScript e la funzione parseInt() in
particolare. Se ci spieghi cosa fa parseInt()...
	Alla prossima,
		Marco

esiste in PERL una funzione equivalente??
Se devi solo convertire una stringa in intero, allora la cosa e` automatica.
Se invece vuoi che, come in parseInt(), il numero venga automaticamente
cercato all'interno della stringa, non mi viene in mente alcuna funzione
gia` pronta. Puoi comunque usare una regular expression per trovare la
parte numerica.
	Michele.
-- 
Michele Beltrame
m...@io.com
http://www.io.com/~mick/
==> Visita il sito di it.comp.lang.perl: 
http://www.perl-it.org
==> Sei del triveneto e vuoi unirti ai Perl Mongers? Scrivimi!

 particolare. Se ci spieghi cosa fa parseInt()...
lo dice la parola, no? ; )
Comunque, per la cronaca, parseInt() converte una stringa in intero, e se il
numero non è convertibile ritorna NaN (Not a Number), un valore
particolarissimo, l'unica costante per cui vale l'espressione NaN!=NaN (cioè
l'unico valore diverso da se stesso)

 NaN!=NaN (cioè l'unico valore diverso da se stesso)
<code>
	sub parseInt 
	{
		my ($val)=shift @_;
		if ($val=~/^\d+$/)	{ return $val }
		else			{ return 'NaN' }
	}
</code>
	Alla prossima,
		Marco

	}
Ma parseInt() non torna il numero anche se e` ad esempio in
una stringa tipo:
c'erano 15 uomini
??
In questo caso la regexp dovrebbe venire sostituita con:
$val =~ /\d+/
credo.


 una stringa tipo:
  Boh? Qui si parla di PERL, non di JavaScript... ;)
	Alla prossima,
		Marco

Newsgroup: it.comp.lang.perl
Titolo: L'AGO NEL PAGLIAIO

 Qualcuno sa dove potrei scaricarlo?
Sei largamente off-topic, comunque prova qui:
http://www.aptech.com/
Non credo sia possibile scaricarlo pero`, devi comprare il pacchetto.
A presto, Michele.

 ha scritto nel messaggio
news:38LI7.28754$jp.21...@bin2.nnrp.aus1.giganews.com...


Newsgroup: it.comp.lang.perl
Titolo: LWP

Come posso fare a costruire un cgi che va su una pagina html e ne estrae
alcune parti del body (per esempio quelle contenute in una tabella) usando
LWP:UserAgent?
Grazie mille



non lo so.
Io uso WGET, con una chiamata system.
Salvo la pagina su un file e la processo some un normale file di testo.
Può bastare?
Max

 wrote in message
e9IBmF2...@cwnts22.ciaoweb...


 ha scritto nel messaggio
news:ZrbI6.10297$FS.1...@news1.tin.it...

Newsgroup: it.comp.lang.perl
Titolo: Windows e Perl

Salve a tutti. Qualcuno riesce a spiegarmi cosa significa questo messaggio:
Insecure dependency in connect while running with -T switch at
C:/Perl580/lib/IO/Socket.pm line 114, <STDIN> line 4.
L'ho ottenuto compilando uno script sotto windows xp con il seguente comando
perl -W -T 
nome_file.pl
Grazie

perl -W -T 
nome_file.pl
Se hai necessità di eseguire perl con l'opzione Taint, dovresti anche sapere
che cosa vuol dire e perché lo fai. Io posso solo consigliarti di leggere
perlsec, se non l'hai già fatto, e controllare i permessi dell'utente che
esegue quello script: lo script tenta evidentemente di eseguire
un'operazione non sicura. Altro, senza conoscere che cosa fa 
nome_file.pl
 e
in quale contesto viene eseguito, è impossibile dirlo.
Ciao.

Newsgroup: it.comp.lang.perl
Titolo: elaborazione file

Salve,
ho un file cosi strutturato:
 
\t----IG2524L4----
Medium Label           : [IG2524L4] IG2524L4
Creation time          : gioved▒ 10 gennaio 2013, 16:10:41
\t----IG0731L4----
Medium Label           : [IG0731L4] IG0731L4
Creation time          : gioved▒ 17 settembre 2009, 11:50:10
 
Vorrei aggiungere per ogni record una terza riga che contenga l'attributo Espiration Date (36 mesi dopo la data di creation).
Il file elaborato dovrebbe essere cosi:
 
\t----IG2524L4----
Medium Label           : [IG2524L4] IG2524L4
Creation time          : gioved▒ 10 gennaio 2013, 16:10:41
Expiration time        : martedi 10 gennaio 2016, ....
\t----IG0731L4----
Medium Label           : [IG0731L4] IG0731L4
Creation time          : gioved▒ 17 settembre 2009, 11:50:10
Expiration time        : mercoledi 17 settembre 2012, ....
 
Stavo provando con bash scripting ma non so come sommare i giorn alla data di creation.

e bash scripting cosa centra con perl?
 
Comunque per 36 mesi la somma la vedo facile...
Sono 3 anni esatti.
Ti basta controllare che la partenza non sia un 29 febbraio nel caso 
metti 28 febbraio o 1 marzo di 3 anni dopo.
Probabilmente puoi evitare di fare il check che l'anno di destinazione 
sia bisistile se anche imposti come ultimo del mese un 28 Febbraio di un 
anno bisestile (e gli mangi un giorno) non sarà la fine del mondo.
 
Comunque questo in bash dovrebbe andare: (però 1095 è 365*3... non tiene 
conto di un eventuale anno bisestile nel mezzo.)
 
date --date "2013-01-29 +1095 days"


Newsgroup: it.comp.lang.perl
Titolo: Informazione

Attenzione attenzione,
Domanda da cento fantastilioni di euro:
CHE LIBRO MI CONSIGLIATE PER IMARARE IL PERL!
Considerate il fatto che gia programmo in C.

 CHE LIBRO MI CONSIGLIATE PER IMARARE IL PERL!
http://theoryx5.uwinnipeg.ca/CPAN/perl/pod/perlfaq2/Perl_Books.html
 Raffaello

Raffaello Galli wrote:

Aggiungo 
http://books.perl.org
 (non molto aggiornato ma meglio che niente).
Se già programmi in C, forse potrebbe essere utile:
Perl for C Programmers, ISBN: 073571228X
Newsgroup: it.comp.lang.perl
Titolo: sostituzione valori in esadecimale

Salve a tutti,
sto elaborando dati che si trovano in alcuni file ascii creati da un
programma scritto in c
durante l'elaborazione mi sono accorto che i file in questioni mostrano dei
caratteri strani che corrispondono al valore esadecimale di 1D
vorrei togliere questi valori e sostituirli con spazi
come posso fare?

 vorrei togliere questi valori e sostituirli con spazi
 $str =~ tr/\x1d/ /;
MM

 ha scritto nel messaggio
news:WS5%b.30960$Kc3.9...@twister2.libero.it...


Newsgroup: it.comp.lang.perl
Titolo: ottenere l'IP del visitatore

ciao a tutti, sto facendo uno script - un quiz - e vorrei fare in modo che
gli utenti che votano possano votare solo una volta e ho capito che bisogna
ottenere l'IP dell'utente. Come si fa? ;-)
Andrea
--------------------------------
Inviato via 
http://usenet.libero.it

$ENV{REMOTE_ADDR}
però come fai ad essere sicuro che l'utente non usi un IP dinamico e rientri
con un altro IP?
--
-.. --- -- .. --.. .. ---
-.. . -- .. -.-. .... . .-.. .. ...

 ottenere l'IP dell'utente. Come si fa? ;-)
   E` probabilmente in una variabile d'ambiente definita dal web server 
(REMOTE_ADDR) ma non e` il modo migliore, dato che migliaia di utenti 
che si collegano da una rete aziendale posta dietro un proxy si 
presenterebbero tutti con lo stesso indirizzo. Un'alternativa che ti 
consiglio (vedi 
http://www.repubblica.it
) e` l'uso dei cookie:
	perldoc CGI
	perldoc CGI::Cookie
-- 
Alla prossima,
Marco


Hai ragione, ma io sono un neofita in perl e quindi vorrei cominciare con le
cose semplici...cmq se conosci un sito dove posso trovare degli esempi sui
cookie, potresti indicarmelo?grazie ;-)
Andrea

 cookie, potresti indicarmelo?grazie ;-)
ti consiglio di seguire il suggerimento di Marco... se fai una ricerca trovi
sicuramente egli esempi gia' pronti... l'IP non ti servirebbe a nulla.. tra
IP dinamici e IP uguali... non ci ricavi nulla. Se metti un cookie sul PC
utente vri sicuramente risultti migliori.
Oxy

...naturalmente a patto che il client accetti i cookies... ;-))

 ...naturalmente a patto che il client accetti i cookies... ;-))
Se non accetta i cookie interni (quelli esterni gli AV e i browser li
escludono di default ).... non va piu' da nessuna parte:)
Newsgroup: it.comp.lang.perl
Titolo: Buttare via il PHP e passare al Perl :-)

Vorrei buttare via il PHP perchè ogni qual volta devi fare un qualcosa
in più ti ritrovi con un sito dove non è installato quello che cercavi
e devi ricompilare, spesso non sei root e ti attac.... :-P
Per la gestione delle sessioni ho visto che c'è il facilissimo
	Apache::Session
sto usando nello specifico ::File.
Volevo domandare quali sono i moduli + usati per:
	1. condividere dati globalmente tra tutte le pagine, tutti
		gli utenti
	2. dividere l'applicazione della sua rappresentazione
		grafica (template?)
	3. funzionare indipendentemente come CGI o tramite mod_perl
Per quanto riguarda la (1) io ho provato a passare un session_id
già stabilito ad Apache::Session::File ma in pratica mi dice
che l'oggetto non esiste nel data store, quindi immagino ci
sia un'altro metodo tra i più usati.
Grazie anticipate!!!
-- 
Saluti, Antonio Gallo - AGX per gli amici di Usenet
(o_         
http://www.antoniogallo.it/
   Sito personale
//\         
http://www.badpenguin.org/
    Progetto "Bad Penguin" (d)
V_/_        
http://www.linux.it/ILS/
      Italian Linux Society 

	3. funzionare indipendentemente come CGI o tramite mod_perl
ciao Anto! ;)
Vuoi un _bel_ consiglio?
Dai un occhio a Mason.
Potrebbe fare al caso tuo.
apt-cache show libhtml-mason-perl, e sorprenditi. :)
-- 
Real programmers can write assembly code in any language.
Maurizio - Tannoiser - Lemmo
Founder Member of ERLUG (Emilia Romagna Linux User Group)
http://erlug.linux.it

 apt-cache show libhtml-mason-perl, e sorprenditi. :)
.nono. uso debian sulla mia macchina :-P


.nono. uso debian sulla mia macchina :-P
;)
-- 
All science is either physics or stamp collecting.


 sia un'altro metodo tra i più usati.
Prova ad usare Apache::SessionManager che ti consente una gestione 
trasparente delle sessioni (hai un'oggetto sessione dove puoi
leggere e scrivere tutto ciò che vuoi senza doverti preoccupare
di crearne una, recuperarla, farla scadere, gestire un datastore
piuttosto che un altro,...)
(
http://www.cpan.org/modules/by-authors/id/E/EN/ENRYS/Apache-SessionManager-0.04.tar.gz
)
by
	- Enrico

Gran cosa. ;)

 piuttosto che un altro,...)
Il mio problema è più semplice, Apache::Session va bene per le sessioni
degli utenti. Però vorrei avere dei dati condivisi ma forse questo posso
farlo con Mason, per ora sono al capitolo 2.
Grazie a tutti per le risposte ovviamente!!!

 Gran cosa. ;)
Beh dopo un pň che usi PHP per certi livelli e come guidare una 500
ogni volta che devi mettere su un sito su un diverso provider
blah... lasciamo perdere che sto male solo a pensarci...
e poi io ho il pallino del caching e del persisten :-P


Si puo' sicuramente fare vedi
<init>
.....
</init>
o
<once>
.....
</once>
dovrebe essere il punto giusto.
ciao
Alberto

Newsgroup: it.comp.lang.perl
Titolo: use strict

Ciao a tutti,
ho cercato sia su perlmod che sui libri cosa è "use strict" e se non ho
capito male è la chiamata di un modulo che fa diventare la scrittura dello
script il più rigida possibile in merito all'uso di variabili.
Non so se ho capito bene.
Quello che certamente non ho capito è perchè uno si dovrebbe complicare la
vita, se uno script funziona senza "use script" perchè uno dovrebbe (alla
Tafazzi) darsi da solo le martellate sui c.....i ?
Certamente ci sarà un motivo ben valido, ma io purtroppo non l'ho colto.
Mi potete chiarire questo aspetto?
Grazie
--
Marco Allegretti
shi...@katamail.com
http://www.shishii.com

 Mi potete chiarire questo aspetto?
Il problema e' proprio quando lo script non funziona. Siccome le variabili
sono di default create al volo nel package corrente, se sbagli a scrivere un
nome non ottieni un errore ma una nuova variabile.
Se stavi usando $machebellavariabile e all'improvviso sbagli e scrivi
$machebellovariabile, potresti impiegare un po' prima di capire dove e'
l'inghippo.
Se invece usi 'use strict', devi praticamente sempre dichiarare le variabili
in anticipo, con 'use vars' oppure locali ai vari blocchi con my.
A questo punto, se avevi, ad esempio
 my $machebellavariabile;
 
 non appena provi ad usare $machebellovariabile ti cucchi un errore e
rinsavisci.
Se invece avevi scritto
 my $machebellavariabile, $machebellovariabile;
 
sono cavoli tuoi :-D
 
'use strict' impone di pensare prima di programmare, cosa che quando si fa
un lavoro serio non puo' mai fare male. Per la programmazione quick'n'dirty,
infatti, non lo si usa, ma nessuno script serio dovrebbe funzionare senza
'use strict'.
Un'altra cosa e' che costringe a qualificare completamente le variabili
globali, per cui riduce il rischio di effetti collaterali tra variabili di
moduli diversi.
Maurizio
-- 
Maurizio M. Munafo' / 
mmmu...@netscape.net
"Consider Phlebas, who was once handsome and tall as you" (T.S.Eliot)

 Mi potete chiarire questo aspetto?
Io in vita mia ho perso certamente piu' tempo a debuggare script
dove l'errore era il nome di una variabile scritto male che ad usare 
use strict.
E' molto comodo che il compilatore ti dica dove sta l'errore invece
che cercartelo da solo. Tutto li.
ti complichi la vita a scrivere... te la semplifichi in debugging.
Se lo script e' di 4 righe di certo "use strict" e' una perdita di
tempo.
Appena hai a che fare con qualche pagina di codice "use strict" ti
evitera'
di perdere ore ed ore a cercare errori non facili da trovare.
Trova la differenza fra $tresp e $tersp in mezzo ad una espresione
regolare
che sta in mezzo a 5000 linee di codice. E poi chiediti se ti complichi
veramente
la vita a dover dichiarare le variabili?
Saluti.
Newsgroup: it.comp.lang.perl
Titolo: Programmuccoli

Tanto per iniziare un saluto a tutti.
Volevo chiedere un consiglio disinteressato!
Nel tempo ho generato varie utility in Perl.
Pensavo di renderle pubbliche su un sito...Tipo Google sites
...O sarebbe meglio da qualche altra parte?
Avverto: sono programmuccoli senza nessuna pretesa,
ma potrebbero essere utili a qualcuno.
Ma questo qualcuno come fa a trovare le mie utility?
Pensavo di pubblicizzarli qui.
Avete qualche consiglio?
Ciao
Andrea

 ...O sarebbe meglio da qualche altra parte?
Ciao Arf,
se ne hai fatto dei packages, potresti pubblicarli su CPAN in modo da 
rendere facilmente raggiungibile e maggiormente utile il tuo lavoro.
Se non ne hai fatto dei packages, potresti invece pensare a *pacchettizzare" 
quanto hai sviluppato, previa verifica che non ci sia gi� :)
Saluti
Anak 

 Anak

>raccoglie script in Perl... Mi potete dare un consiglio?
E perch� un qualche oscuro sito italiano dovrebbe essere meglio di CPAN?
Ciao.

 Ciao.
Mi hai convinto!
.
.
Grazie.
.
.
Ciao
Andrea

Newsgroup: it.comp.lang.perl
Titolo: impostare cookie

Salve a tutti!
non so se quello che stò per chiedere sia OT se così fosse chiedo scusa:
chiedevo se qualcuno può dirmi come impostare dei cookie ovviamente
utilizzando PERL, stò lavorando con l'API DBI per gestire  un DB Mysql e
dovrei mantenere nei client almeno un dato che possa poi essere riutilizzato
come conservazione dello stato.........
grazie a tutti!!
ciao
Claudio Bellucci

utilizzando PERL, stò lavorando con l'API DBI per gestire  un DB Mysql e
CGI.pm ti permette di farlo in modo abbastanza semplice. Per maggiori
informazioni:
perldoc CGI
	Michele.
-- 
Michele Beltrame
m...@io.com
http://www.io.com/~mick/
ICQ# 76660101
==> Visita il sito di it.comp.lang.perl: 
http://www.perl-it.org
==> Sei del triveneto e vuoi unirti ai Perl Mongers? Scrivimi!
Newsgroup: it.comp.lang.perl
Titolo: Carattere "Enter" in campo testo

Ho preparato un form dove vengono inseriti dei testi, in un campo viene
inserito un testo abbastanza lungo e di conseguenza viene usato l'enter per
andare a capo e renderlo più leggibile.
Tutto i dati vengono poi scritti in una pagina HTML tramite uno script Perl
(come Guestbook).
Il problema: I ritorni a capo del testo non vengono presi in considerazione
e nella nuova pagina mi riappare tutto senza enters.
Dove sbaglio?
Cosa posso fare?
Grazie a tutti.

 Cosa posso fare?
s/\n/<br>/g;
Valerio

 cerchero' un'altra donna dentro ai sogni di Tarzan...










 >


 l'immagine?
Prova questo:
#!/usr/bin/perl -w
$_ = "<h1>Ciaoooo\n</h1>";
s/</&lt;/g;
s/>/&gt;/g;
s/\n/<br>/g;
print "Content-type: text/html\n\n";
print;
Ciao,
Valerio


wrote:
| Come posso fare per fare in modo che mi legga i tag come testo e si veda poi
| quello che effettivamente ha scritto e non Pinco Pallino grande più
| l'immagine?
a) sua <PLAINTEXT> (io ho sempre avuto problemi, pero)
b) converti '<' e '>' in rispett. '&lt' e '&gt'
Oha

a) sua <PLAINTEXT> (io ho sempre avuto problemi, pero)
"<PLAINTEXT>" e' meglio lastarlo stare...
IE4/Win (chesiamaledettooraesempreamen) quando trova quel tag se ne
fotte anche di testare l'esistenza di </PLAINTEXT>, e per lui di li'
in poi e' tutto plain :-(((


 Pallino grande più l'immagine?
usa <XMP> ... </XMP> al posto di <PRE> ... </PRE>.
ma mi sa che ci siamo allontanati un po' troppo dal perl...
bye!
__END__
# Aldo Calpini
print sort {$_{$a} cmp $_{$b}} values %{{split undef,
"xritajbugne fahokem csuctawer jhdtlrnpqloevkshpr"}};

 > Pallino grande piů l'immagine?

Newsgroup: it.comp.lang.perl
Titolo: Problemi con GD

??????Sono bacato io, è bacato il mio programma, è bacato il modulo GD???
Avevo intenzione di fare un programma che converte un immagine GIF a colori 
in un immagine GIF a livelli di grigio, per questo mi sono affidato al 
modulo GD che è un modulo per "usare" le GIF.
Il mio programma dovrebbe essere così:
use GD; # Apre il modulo
$x = 100; #Definisco le dimensioni
$y = 100;
open (GIF, "image2.gif");                  # apro l'immagine
$img =  newFromGif  GD::Image(GIF) || die; # il modulo carica l'immagine
close GIF; # chiudo l'immagine
sub rgb_light { # sub che mi dà la luminosità di un pixel (serve per 
i 						#livelli di grigio)
	sub numerically {$a <=> $b}
	local @color = sort numerically ($_[0],$_[1],$_[2]);
	local $light1 = $color[0] / 2;
	local $light2 = $color[2] / 2;
	local $light = $light1 + $light2;
	return $light; 	
}
while ($county != $y) { # analizza ogni Pixel
	while ($countx != $x) {
		$index = $img->getPixel($countx,$county); #Serve per sapere RGB di
		($r,$g,$b) = $img->rgb($index);				# un PIXEL
 
		$l = rgb_light($r,$g,$b); # $l = luminosità
		$l = $l + 0.1;
		$l = int($l); # arrotondo $l
		$col = $img->colorAllocate($l,$l,$l); # definisco il colore che 
deve 															#diventare il PiXel
		$img->setPixel($countx,$county,$col);	#assegno al pixel corrente 
il 															#colore
 
		$countx++;
 
	}	
	$county++;
	$countx = 0;
}
binmode STDOUT;
print $img->gif; #stampa il file gif
Però mi da un immagine tutta bianca.
Se però inserisco un "print $l" prima di assegnare il colore al Pixel mi dà 
dei numeri che non sono tutti 255. E soprattutto quando alla fine  stampa 
il file gif (print $img->gif;) stampa un risultato diverso: disolito dà un 
centinaio di caratteri me ne dà molti di più.
Spero di essere stato chiaro.
Ciao e grazie.
-- 
Posted from 
community5.interfree.it
 [213.158.72.35] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Gold camel,
credo che questo script abbia alcuni problemi, che spiegano il comportamento
"bizzarro" che descrivi.
1) la funzione colorAllocate() ritorna spesso -1 qualora si stia manipolando
un'immagine già esistente. In questo caso, infatti, non sempre è possibile
trovare una nuova posizione (nella paletta dei colori) per il nuovo colore
che si desidera creare. La funzione colorClosest(), invece, ritorna l'indice
del colore + vicino a quello desiderato, e quindi è spesso preferibile.
2) la funzione rgb() ritorna valori tra -127 e +127 e quindi la tua funzione
che cerca di determinare il livello di grigio si comporta, talvolta, in
maniera strana. Immagino che non ti aspettassi questo fatto. Nemmeno io, se
è per questo, quando l'ho esaminata.
Per trasformare un'immagine a colori in una in bianco-nero, comunque, credo
che sia più semplice creare una nuova immagine, per la quale è possibile
creare a piacere nuovi colori, nel tuo caso funzione di quelli originali.
Infine credo questa pagina
http://faqchest.dynhost.com/prgm/perlu-l/perl-01/perl-0101/perl-010100/perl0
1010410_17820.html possa darti alcune utili indicazioni su tecniche
alternative per stabilire il livello di grigio da associare a una terna RGB.
ciao
Newsgroup: it.comp.lang.perl
Titolo: Lettura file da http

Premesso che sono solo agli inizi con il perl ed il cgi, ho questo problema:
devo leggere un file di testo tramite un indirizzo web, ad esempio
http://www.miosito.it/pippo.txt
.
Ho provato a scrivere qualcosa del genere:
$file = "
http://www.miosito.it/pippo.txt
";
open (FILE, "<$file")||die "Non riesco ad aprire il file";
e la risposta è stata: "Non riesco ad aprire il file".
Accetto suggerimenti su come leggere dalla fonte $file.
Grazie
Paolo Cannas

> e la risposta è stata: "Non riesco ad aprire il file".
vorrei vedere... :)
Esistono dei moduli che ti permettono di leggere una pagina http. Io uso il
modulo LWP, che è molto semplice da usare e funziona anche quando devi
passare attraverso un proxy; ma penso ce ne siano anche altri (neanch'io
sono un esperto perl).
Paulus
--------------------------------
Inviato via 
http://usenet.libero.it

 sono un esperto perl).
Grazie Paulis,
concisa ma preziosa indicazione.
Paolo Cannas

Newsgroup: it.comp.lang.perl
Titolo: post su post

sto preparando un cgi, che dovrebbe postare il contenuto di un form su
un altro cgi,
il cgi in question (quello remoto) accetta 3 campi, sul mio form ce n'e'
solo uno, gli altri 2 (per motivi di riservatezza) stanno all'interno
del mio cgi
non riesco a venirne a capO!!!!!
qualcuno mi puo' dare una mano?
grazie

...

Da quello che ho capito vorresti raccogliere alcuni dati tramite una form
(A), passarli ad un tuo cgi (B) il quale aggiunge altri campi e "spara" il
tutto su un terzo CGI (C) forse esterno?.
Se ho centrato il tuo problema non e' molto difficile.
Lo script (B) non deve far altro che leggere i valori passati da (A) e come
output dovra' dare qualcosa del tipo:
print "Location:
http://www.server.com/cgi-bin/script(C).cgi?var1=$input{'var1'}&var2=$var2&v
ar3=$var3\n\n";
passato ovviamente come intestazione al server web, dove:
    $input{'var1'}    = valore proveniente dalla form (A)
    $var2                 = parametro inserito dallo script (B)
    $var3                 = parametro inserito dallo script (B)
Lo script (C) deve supportare il metodo POST.
Spero di esserti stato di aiuto
Marcello Ridolfi
Newsgroup: it.comp.lang.perl
Titolo: gestione attachment

Ciao a tutti,
sono Andrea da Roma, volevo sottoporvi un problemino:
Ho scritto una porzione di codice che gestisce un form per l'invio di una
mail dal web, ora il mio problema é capire come si fa a gestire
l'attachment. Ovvero non riesco a capire come si fa a fare l'upload del file
sul server remoto che gestisce il form.
Sareste così gentili da darmi una mano?
Grazie infinite
Andrea

Andrea,
caius wrote:

   Nella documentazione del modulo CGI.pm c'e` scritto tutto cio` che ti 
serve (compresi i problemi che in questo caso si presentano se il web 
server e` MS IIS e le eventuali soluzioni).
	$ perldoc CGI
--
Alla prossima,
Marco

Newsgroup: it.comp.lang.perl
Titolo: Perl e Ping! Aiuto!!!

Salve!
Ho un grosso problema:
Come posso fare a prendere i numeri che il ping da nel suo output? In
particolare l'indirizzo ip non mi interessa, mi interessano solo i di RTT e
quelli statistici.
Se qualcuno mi risolve questo problema.....!!!!
                Grazie  Grazie Grazie  ;-)

 quelli statistici.
Per la parte di output di ping strutturata come chiave=valore, come, per 
esempio, ttl=250 o time=0.6 ms, puoi utilizzare una RE come segue:
<code>
	#!/usr/bin/perl
	open PING,"ping imbuto|" or
	   die "unable to open pipe: $!";
	while (<PING>) {
	    /time=(\d+\.\d+ ms)/;
	    print "Response time is: $1\n" if $1
	}
	close PING
</code>
Per altri tipi di informazione, e` sempre possibile ricorrere a RE piu` 
complesse.
-- 
Baci,
Mony

Newsgroup: it.comp.lang.perl
Titolo: Orologio Esadecimale

ieri pomeriggio mentre lavoravo mi e' venuta voglia di fare un orologio
in esadecimale, l'utilita' credo che sia pressoche' nulla, pero' stasera
mi sono fatto aiutare un po' ed e' venuto fuori questa roba qua
#!/usr/bin/perl
print "\nOrologio Esadecimale 0.1.0 by Gecco\n";
print "please report bug at gecco\@
gundam.com
\n\n";
use POSIX qw(strftime);
$ora = strftime "%H:%M:%S", gmtime; 
print "$ora in decimale\n";
@orario = split(/:/,$ora,3);
$ore = @orario[0];
$minuti = @orario[1];
$secondi = @orario[2];
$orehex = sprintf("%x",$ore);
$minutihex = sprintf("%x",$minuti);
$secondihex = sprintf("%x",$secondi);
$orehex = "0" . $orehex unless $ore > 15;
$minutihex = "0" . $minutihex unless $minuti > 15;
$secondihex = "0" . $secondihex unless $secondi > 15;
#$orehex=uc($orehex);
#$minutihex=uc($minutihex);
#$secondihex=uc($secondihex);
$orehex=~tr/a-f/A-F/;
$minutihex=~tr/a-f/A-F/;
$secondihex=~tr/a-f/A-F/;
print "$orehex:$minutihex:$secondihex in esadecimale\n\n";
ora cerco un modo di farlo in binario :)
bau

$secondihex=~tr/a-f/A-F/;
... e` piu` elegante:
$orehex=sprintf("%.2X",$ore);
$minutihex=sprintf("%.2X",$minuti);
$secondihex=sprintf("%.2X",$secondi);
Ciao ciao.
--------------------------------
Federico Mion
http://www.dei.unipd.it/~effemme
--------------------------------
Newsgroup: it.comp.lang.perl
Titolo: IO::Socket::INET

Se devo mettere un server in perl in ascolto su piu' indirizzi cosa mi 
consigliate di fare? attualmente uso:
LocalAddr => '0.0.0.0'
 
e mi va bene, fa il suo lavoro.
Ma se ad esempio voglio che legga gli indirizzi su cui stare in ascolto 
da una lista su un file e che non si metta in ascolto su tutti gli 
indirizzi ip della mia macchina? Devo forkare n processi per tutti gli 
n indirizzi? Ditemi di no, gia forko per andare in bg e per tutti i 
client che mi si collegano... 
--
Master:"Conan, what is best in life?" 
Conan:"To crush your enemies, see them driven before you,
and to hear the lamentations of their women!

 client che mi si collegano...
potresti usare i thread per gestire i client (invece di "forkare")
oppure fare un polling server usando la funzione select (la versione
a 4 argomenti) (o meglio IO::Select) per scandire filehandles in modo 
da verificare cambiamenti su di essi.
-- 
$_=q,6;-16;-1;-8;0;7;-13;-12;-9;-3;13#4A75737420616E6F74686572,,($_,$b)=
split?#?;@b=split?;?;map{$c.=$_,$d.=chr$b[$e++]+ord}split??,pack'H24',$b
;chop$d,print$c.chr(32).$d

Newsgroup: it.comp.lang.perl
Titolo: Select-case o Switch in perl.

Salve.
Scusate, quale' in perl l'istruzione corrispondente allo
switch del C o alla select case del Clipper e del Pascal?
Grazie.
-- 
per rispondere togli <toglimi> dall'indirizzo di posta. 

 Grazie.
Come keyword no.
Ma e' facile fare qualcosa di simile, eg:
SWITCH1: {
	(fie($_), last SWITCH1) if (/foo/);
	(fum($_), last SWITCH1) if (/bar/);
	#
	# Etc...
	#
}
Cheers,
	Alessandro

per rispondere togli <toglimi> dall'indirizzo di posta.
Non mi pare esista la parola chiave switch o simile.
Io faccio sempre una catena di if-then-else
if (cond1){
...
}elsif(cond2){
...
}else{
...
}
Ci sono ovviamente altre soluzioni. Questa mi sembra la piu' leggibile, ma
e' questione di gusti.
Ciao
Maurizio
--
Maurizio Coppari
C.I.R.F.I.D. - University of Bologna
via Galliera 3, 40126  Bologna
e-mail: 
cop...@remove.cirfid.unibo.it
           (please remove remove in reply)

mrs...@tin.it
 wrote:
 >Scusate, quale' in perl l'istruzione corrispondente allo
 >switch del C o alla select case del Clipper e del Pascal?
E` dettagliatamente spiegato in perlsyn.
-- 
ciao, | [Per rispondere togli "toglimi" dal mio indirizzo.]
Marco | * The Internet is full. Go away.  -- Joel Furr *

 wrote:
: Scusate, quale' in perl l'istruzione corrispondente allo
: switch del C o alla select case del Clipper e del Pascal?
Non esiste. O meglio ce ne sono piu` di quante si possano volere. :-)
Per una panoramica completa ti rimando alla pagina di manuale perlsyn,
sezione "Basic BLOCKs and Switch Statements".
-- 
Nando Santagata: Telemastica & infornatica
Key fingerprint = C2 D9 C0 8E D5 B7 04 97  AF E8 3F 3E AF 4E 7F 9E
finger nando (at) ns (dot) ipers (dot) net   for my PGP public key
Home: 
http://www.ipers.net/~nandos
Newsgroup: it.comp.lang.perl
Titolo: Ignorantissimo

Sto muovendo i primissimi passi in Perl e ho un problema banale, ma č un
problema.
Devo sperimentare un cgi stupidissimo dal mio browser, come lo faccio
caricare.
In dettaglio. Ho una pagina html cosě composta:
<HTML>
    <HEAD>
    <TITLE>Hello Ice Cream</TITLE>
    </HEAD>
    <BODY>
    <H1>Hello Ice Cream</H1>
    <FORM ACTION="cgi2.cgi">
    What's your flavor? <INPUT NAME="favorite" VALUE="mint">
    <P>
    <INPUT TYPE="submit">
    </FORM>
    </BODY>
</HTML>
Il file cgi2.cgi č cosě composto:
#!/usr/bin/perl -w
# cgi1.cgi: program to answer cgi1
use CGI qw(:standard);
print header(), start_html("Hello World"), h1("Greetings, Terrans!");
my $favorite = param("flavor");
print p("Your favorite flavor is $favorite.");
print end_html();
Quando clicco sul submit ottengo semplicemente il listato dello script su
una pagina html. Ho dimenticato di installare qualcosa? Sono proprio scemo?
AIUTATEMI.
--
***************
Antonio Soligo
Viale Farra n. 15
32032   Feltre   (BL)
      ITALY
Tel. 
+39 0439302951
mail: 
anso...@tin.it
****************

 
Non si tratta di essere scemi o meno, si tratta di studiarsi la
documentazione, leggersi le FAQ, e tutto il resto.  In sostanza, studiarsi
un pochino di teoria e non procedere (troppo) per tentativi... ;-)
Il tuo è probabilmente un problema di configurazione del server web e
quindi a rigori qui sarebbe off-topic (peraltro, se non dici che server
usi è difficile aiutarti). Permettimi però di darti alcuni suggerimenti.
Se ti interessa imparare a programmare in Perl evita di concentrarti sugli
script CGI. Sono senz'altro una possibile e comune applicazione, ma per
chi si avvicina al linguaggio, introducono soltanto un livello di
complicazione ulteriore, che poco ha a che fare con il Perl e molto con il
web server. Prendi dimestichezza con il linguaggio, prima. Studiane la
sintassi. Ci sono eccellenti tutorial, in rete (se per te l'inglese non è
un problema). 
www.perl.com
 è un ottimo punto di partenza.
Max
Newsgroup: it.comp.lang.perl
Titolo: Microsoft Personal Web Server VS Apache

Sia con Personal Web Server che con Apache non riesco ad eseguire i miei
script, ho sempre un errore:
HTTP 500: errore interno del server
Ho installato ActiveWare Perl 5, ma non riesco a far eseguire gli script dal
browser?
La prima linea degli script è sempre #!/usr/bin/perl
ma lo stesso non funziona...
HELP ME PLEASE!!!

 
Argh.... Tre giorni fa non sapevi come eseguire uno script e la cosa
migliore che ti sia venuta in mente è installarti addirittura due web
server? (Ok, sto scherzando, ma il messaggio è chiaro: se volete imparare
il Perl, lasciate stare i web server.)
Allora, se vuoi che qualcuno ti aiuti...
1. Hai provato ad eseguire gli script da riga di comando?
2. se sì, cosa accade?
3. Gli script stampano i famosi header correttamente?
4. Hai guardato nel log del web server, in particolare
 nell'error_log di Apache ?
5. Ti sei letto le FAQ al sito dell'Activestate?
6. Ti sei letto le altre FAQ (quelle generiche sul Perl e quelle su CGI)?
  -->  
http://www.perl.com/pub/v/faqs
Max

 ma lo stesso non funziona...
Prova con c:\perl\bin\perl.exe o simili, ovvero il percorso dove hai
installato il perl.
Ciao
Filippo

Newsgroup: it.comp.lang.perl
Titolo: Primi passi con perl e regex

 Mailbox disk quota exceeded
....
in un unico file di testo, dal quale vorrei estrarre SOLO gli indirizzi 
tra parentesi angolari.
Dai e ridai, usando awk, cut e regex ho ottenuto il risultato in questo 
modo:
awk '/(<.+@.+>)/' File_mail.txt | cut -d"<" -f2 | cut -d">" -f1
ma vorrei trovare un modo più semplice, magari con un one-liner in perl.
ho fatto un po' di prove tipo:
perl -pe 'm/<(.+?@.+?)>/g' File_mail.txt
ma il risultato mi dice che non ho capito bene...
Una mano a questo punto sarebbe gradita, quanto meno per capire dove 
andare a sbattere la testa.
Grazie
Saluti
Libra


C'eri vicino. Ma invece di -pe (che stampa sempre) usa il -ne (che legge solo)
Eccoti tre versioni equivalenti:
perl -ne 'print "$1\n" if  m/(<.+?\@.+?>)/' File_mail.txt
perl -ne 'm/(<.+?\@.+?>)/ and print "$1\n"' File_mail.txt
perl -ne 'if (m/(<.+?\@.+?>)/) {print "$1\n"}' File_mail.txt
In pratica, una volta "catturato" il risultato fra le parentesi, lo devi usare ($1)
Ciao
gmax
-- 
 _  _ _  _
(_|| | |(_|><  The Data Charmer
 _|
http://datacharmer.blogspot.com/

modo:
La maggior parte delle notifiche di errore di recapito ("bounce messages" o
"delivery reports") obbedisce ad un preciso protocollo (RFC1892, se non
vado errato), e puň essere analizzato, senza rompersi la testa con regex
piů o meno abborracciate, con un apposito modulo Perl.
Il modulo si chiama Mail::DeliveryStatus::BounceParserMail, e tenta
un'analisi anche di alcune diffuse forme di notifica che non seguono il
protocollo.
Ciao.

 gmax
Ciao e grazie
Libra

 Ciao.
Saluti
Libra


Perche' il /g serve se vuoi eseguire la stessa ricerca piu' volte NELLA STESSA RIGA.
Se pensi che non ci sia piu' di un indirizzo per riga, non serve il /g.
Oppure, se consideri il testo come un'unica riga, allora il /g va usato:
perl -0 -ne  'print "$1\n" while  m/(<.+?\@.+?>)/g' File_mail.txt
ciao

Newsgroup: it.comp.lang.perl
Titolo: Dump Hex (forse OT)

Non sono sicuro se l'argomento che vi sto presentando sia o meno OT,
ma spero che qualcuno possa darmi almeno qualche dritta.
Avrei bisogno di dumpare un file e mi sono installato  Data::HexDump.
Ho preso spunto da questo scripts:
use Data::HexDump;
$file2dump="c:/documenti/pippo.exe";
  my $fh = new FileHandle $file2dump;
  my $f = new Data::HexDump;
  $f->fh($fh);
  $f->block_size(1024);
  print while $_ = $f->dump;
  close $fh;
Il problema č che non mi dumpa (a video) tutto l'eseguibile ma fino a
:
00000210
ma l'eseguibile č molto piů grande.
Conoscete una soluzione o un metodo alternativo che funge?
Ciao

ma l'eseguibile č molto piů grande.
A me funziona (credo; certo non ho potuto evidentemente provarlo su
"c:/documenti/pippo.exe"). Magari perň č il caso di aggiungere un binmode.
Oppure, hai provato a far aprire il file direttamente da Data::HexDump
(metodo Data::HexDump::file, invece che Data::HexDump::fh), cosě che se lo
aggiusta a suo modo?
Ciao.

mmhmm.. quasi quasi.. c'è ancora qualcosa che non funge.
Cmq, ho inserito :
  binmode($fh);
ed adesso invece di dumparmi fino a 
00000210
dumpa fino a:
00006580
cioè quasi tutto il file.
La dimensione è : 65f5
mancano solo pochi byte! :(
Cosa intendi x Data::HexDump::file?

Cosa intendi x Data::HexDump::file?
Intendo che invece di fare:
    my $f = new Data::HexDump;
    my $fh = new FileHandle $file2dump;
    $f->fh($fh);
puoi fare:
    my $f = new Data::HexDump;
    $f->file($file2dump);
Così che ci pensi HexDump stesso ad aprire il file nella modalità che più
gli piace. Dovrebbe essere la stessa, medesima e identica cosa, però, hai
visto mai.... e, soprattutto, visto che non mi viene in mente altro....
Ciao.

scusa! avevi ragione.. mi ero confuso!
con gli exe, tutto risolto. Mi dumpa tuttop il file, ma solo dopo aver
aggiunto il binmode.
Il problema ce l'ho con una gif. Ho provato a seguire la stessa
rocedura ma con un'immagine.. e lě che mi da problemi. Non mi dumpa
tutto.
Ciao

Sembra che adesso tutto funzioni.
Un'ultima curiosità: conosci/esiste un modulo x riassemblare il tutto?
Ti ringrazio di nuovo x la disponibilità! ;)
Ciao

Un'ultima curiosità: conosci/esiste un modulo x riassemblare il tutto?
Può darsi benissimo, una volta che si sia stabilito che cosa intendi per
"riassemblare il tutto".
Se intendi ricostruire un file dal suo dump esadecimale, non conosco nessun
modulo che lo faccia direttamente, ma non dovrebbe essere un'impresa
costruire una procedura, utilizzando pack e unpack.
Una volta c'era un giochino che si faceva con debug (esiste ancora debug?),
ma non ricordo come funzionasse.
Ciao.

 costruire una procedura, utilizzando pack e unpack.
ok, userň sia pack/unpack e vediamo cosa ne esce fuori.
Grazie di nuovo
Ciao