fgalves escribiste:Lo que intento hacer, es un "split" pero en tiempo real (para llamarlo de alguna manera). Es decir, cuando dicho fichero temporal alcanza un número de líneas determinado, vuelco su contenido a un fichero de salida, y luego vacío su contenido y pongo el contador a cero repitiendo dicha operación cuantas veces haga falta. Al final del día, mi objetivo es tener múltiples ficheros .txt en vez de un solo fichero temporal FILEOUT conteniendo la totalidad de los datos.
Humm... yo creo que este problema se puede resolver con un bucle de 'cat's y al final, ejecutar un comando 'split'. Sin Perl
Bueno, depende de algunos factores, como puede por ejemplo, el tamaño del fichero. Se supone que un cat es una operación de lectura/escritura mientras que un cp es una operación del sistema de ficheros. Mejor hacer una prueba:fgalves escribiste:Por cierto Explorer: ¿Por qué es mucho mejor un cp que un cat? ¿Es quizás más eficiente?
Using perl Syntax Highlighting
#!/usr/bin/perl
use strict;
use Benchmark qw(:all) ;
my $count = 1000;
cmpthese( $count, {
'cat' => sub { `cat abuse > abuse1` },
'cp' => sub { `cp abuse abuse1` },
});
use strict;
use Benchmark qw(:all) ;
my $count = 1000;
cmpthese( $count, {
'cat' => sub { `cat abuse > abuse1` },
'cp' => sub { `cp abuse abuse1` },
});
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
- Código: Seleccionar todo
Rate cat cp
cat 3030/s -- -6%
cp 3226/s 6% --