[bcn-pm] consulta

Jose Luis Perez Diez jluis a escomposlinux.org
dim nov 12 00:36:20 PST 2013


El Monday 11 November 2013 20:46:11 Agud Pique, Enric va escriure:
> 
> Una consulta gent,
> 
> Faig un cat i un grep d'un fitxer buscant la paraula SUCCESS i despres la passo per mail.

si fas grep no tens perquè fer servir cat també pots fer :
    my $fitxer = 'run_WRF_eur55km_12.log';
    my $objectiu = 'SUCCESS';
    my @missatge =qx(grep $objectiu $fitxer);#qx es el matieix que `` mira perldoc perlop

> 
> Tal com ho he fet funciona, però vull saber si ho farieu d'una altra manera, el cat i grep els utilitzo en shell,
> però desconec si aquesta és la millor manera de fer-ho en perl, executo les funcions entre ' '...
> 
> En perl, les funcions cat i grep de shell també funcionen?

Perl no te funció cat i grep es un filtre (a perl map reduce fa servir map i grep)

	 my $fitxer;
    open ($fitxer,'run_WRF_eur55km_12.log');
    my $objectiu = 'SUCCESS';
    my @missatge = grep(/$objectiu/,<$fitxer>);# perldoc -f grep
#    my @missatge = grep {/$objectiu/} <$fitxer>;# usant un bloc de codi en lloc d'una expresió
    

Si el que vols es una solució Perl pura mira el que varem preparar per un curset de programació amb perl https://github.com/barcelonapm/curs-1211

espero que alguna de les opcions et serveixi

Jluis


Més informació sobre la llista de correu Barcelona-pm