The UNIX and Linux Forums  

Go Back   El UNIX y Linux Foros > Arriba Foros > Programación de scripts de shell y
.
google unix.com



Programación de scripts de shell y Plantear preguntas sobre KSH, CSH, SH, BASH, PERL, PHP, SED, AWK y otros scripts de shell y lenguajes de script de shell aquí.

Más UNIX y Linux Foro Temas usted puede encontrar útiles
Hilo Hilo para principiantes Foro Respuestas Último mensaje
Combinar los archivos de texto, mientras que la combinación de las múltiples encabezado / remolque registros en cada una. oordonez Programación de scripts de shell y 4 11-17-2008 11:06 PM
¿Cuál es su edad? (Parte 2) Perderabo ¿Qué hay en tu mente? 37 07-20-2007 01:27 PM
Cuenta N º de registros en archivos de cabecera y sin contar Tráiler Documentos guiguy Programación de scripts de shell y 2 06-07-2007 01:15 PM
Ayuda para la comparación de 2 archivos para encontrar registros borrados eja UNIX for Dummies Preguntas y Respuestas 2 04-03-2007 09:53 AM
Cómo extraer registros duplicados asociados con registro cabecera run_eim UNIX for Dummies Preguntas y Respuestas 17 01-16-2007 11:46 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback vínculo Herramientas de hilo Buscar en este Hilo Tasa de Hilo Modos de visualización
  #1 (Enlace permanente)  
Old 12-02-2008
cmaroju cmaroju is offline
Usuario Registrado
  
 

Fecha: noviembre 2008
Puestos: 19
la comparación de parte de la cabecera con la parte de un registro detallado.

Hola,

Lil estoy confundido con el siguiente problema.

Tengo un archivo, que tiene el siguiente encabezado: IMSHRATE_043008_101016

registro detallado de una muestra es la siguiente:9820101 A982005000CAVG030108000000000000010169000MAR 2008
9820102 MAR 2008 D030108


Tengo que comparar la parte de la cabecera (se destacan en rojo y sus fuentes un formato DDMMAA) con el Parte del Registro (resaltado en amarillo su fuente y también su formato DDMMAA).

El problema es que hay miles de la documentación (en una media de 50.000 registros) en un solo archivo. ¿Puede alguien me ayude en la comparación de los "parte de la cabecera con la parte de registro detallado" en highlightened Rojo y Amarillo fuente de ejemplo de arriba?


Recuerdos,
Cmaroju
  #2 (Enlace permanente)  
Old 12-02-2008
summer_cherry summer_cherry is offline Forum Advisor  
Usuario Registrado
  
 

Fecha: junio 2007
Ubicación: Beijing China
Mensajes: 1.098
Hola,

Es la sección amarilla de relieve es fijo en todas sus líneas de detalle?

de todos modos, por debajo de perl puede ayudar un poco

entrada (a.txt):

Código:
IMSHRATE_043008_101016
9820101 A982005000CAVG 030108 000000000000010169000MAR 2008 9820102 MAR 2008 D030108
9820101 A982005000CAVG 030109 000000000000010169000MAR 2008 9820102 MAR 2008 D030108
9820101 A982005000CAVG 043008 000000000000010169000MAR 2008 9820102 MAR 2008 D030108

salida:

Código:
MSHRATE_043008_101016
9820101 A982005000CAVG 030108 000000000000010169000MAR 2008 9820102 MAR 2008 D030108
Smaller than header
9820101 A982005000CAVG 030109 000000000000010169000MAR 2008 9820102 MAR 2008 D030108
Bigger than header
9820101 A982005000CAVG 043008 000000000000010169000MAR 2008 9820102 MAR 2008 D030108
Equal with header

Código:

Código:
open FH,"<a.txt" or die "Can not open file\n";
my @arr=<FH>;
close FH;
$arr[0]=~m/(.*)_([0-9][0-9])([0-9][0-9])([0-9][0-9])_(.*)/;
$header=$4.$2.$3;
print $arr[0];
for($i=1;$i<=$#arr;$i++){
	my @temp=split(" ",$arr[$i]);
	$temp[2]=~m/([0-9][0-9])([0-9][0-9])([0-9][0-9])/;
	my $body=$3.$1.$2;
	print $arr[$i],($body>$header)?"Bigger than header\n":($body==$header)?"Equal with header\n":"Smaller than header\n";
}

Closed Thread

Marcadores

Herramientas de hilo Buscar en este Hilo
Buscar en este Hilo:

Búsqueda avanzada
Modos de visualización Vota a este hilo
Vota a este hilo:

Normas de envío
puede que no nuevo puesto de hilos
puede que no enviar respuestas
puede que no enviar archivos adjuntos
puede que no editar sus puestos

Código BB es Encendido
Emoticones son Encendido
[IMG] código Encendido
Código HTML es Apagado
Trackbacks son Encendido
Pingbacks son Encendido
Refbacks son Encendido




Todas las horas son GMT -4. La hora es 08:29 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traducciones de idiomas Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Estudios
El UNIX y Linux Foros Contenido Copyright © 1993-2009. Todos los derechos Reserved.Ad Gestión por RedTyger

Las direcciones URL de contenido vBSEO 3.2.0