Les escribo, para consultarles si pueden ayudarme con un problema que estoy teniendo con un script.
La función del mismo es leer todos los archivos de un directorio, buscar todos los que dentro tengan la palabra "marca" y luego a esos aplicarles una regex en busca de direcciones IP.
En la columnas deben ir los nombres de los archivos y debajo de cada uno las IP identificadas en ese archivo.
Me está devolviendo bien las columnas, pero las IP quedan en cualquier lado y no en la columna del nombre del archivo, donde fue identificada.
Using perl Syntax Highlighting
- #!/usr/bin/perl
- use Excel::Writer::XLSX;
- my $workbook = Excel::Writer::XLSX->new("marca.xlsx");
- my $worksheet = $workbook->add_worksheet('test');
- #variable en 0
- $a = 0;
- $b = 0;
- @files = <*>;
- foreach $file (@files) {
- open( $archivos, "<", "$file" ) || die "$!";
- while ( $resultado = <$archivos> ) {
- if ( $resultado =~ m/^.*marca/ ) {
- push( @marca, $file );
- $worksheet->write( 0, 0 + $a, $file );
- $a++;
- }
- }
- foreach $marca (@marca) {
- undef @marca;
- open( $archivos2, "<", "$marca" ) || die "$!";
- while ( $resultado2 = <$archivos2> ) {
- if ( $resultado2 =~ m/^ip (192.168.0.[0-9|\.].*)\// ) {
- $worksheet->write( 0 + $b, 1 + $a, $1 );
- $b++;
- }
- }
- }
- }
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Saludos y desde ya muchas gracias.