The UNIX and Linux Forums  
Ciao e benvenuto da parte degli Stati Uniti al UNIX e Linux Forum! Grazie per la visita ed unirsi alla nostra Comunità Globale.

Go Back   UNIX e Linux Forum > Inizio Forum > Shell scripting e di programmazione
.
google unix.com



Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui.

Più di UNIX e Linux Forum Argomenti potreste trovare utili
Filo Thread Starter Forum Risposte Ultimo Post
Numero di linee in un file (script perl) jisha Shell scripting e di programmazione 5 05-20-2008 08:11 AM
Script per proclog scansione dei file deeprajn95 Shell scripting e di programmazione 3 05-12-2008 07:25 AM
Perl: Rimettersi riferimento da s modificatore cooldude Shell scripting e di programmazione 8 03-19-2008 09:49 AM
Script in Perl per la scansione di file tramite gholdbhurg Shell scripting e di programmazione 1 03-05-2008 10:53 PM
Come effettuare la scansione solo aggiunto nuove linee nel file? redlotus72 UNIX for Dummies Domande & Risposte 3 04-28-2005 04:34 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 Thread Tools Cerca in questo Thread Rate Thread Modalità di visualizzazione
  #1 (permalink)  
Old 03-18-2008
gholdbhurg gholdbhurg is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Interventi: 26
Script in Perl per la scansione di linee di ritorno

Salve Perl guru,
Ho questo file per eseguire la scansione tramite. Esempi di linee di seguito:

2008031A, USERNAME, 12345, ABC dare, prendere XYZ, transazione presentata
2008031B, USERNAME, 12346, in attesa di lavorazione
2008031C, USERNAME, 12347, Recupero risposta
2008031D, USERNAME, 12348, Questa non è una valida trattare
2008031E, USERNAME, 12349, membro abbia mancato
2008031F, USERNAME, 12350, System \u003d 0
2008031G, USERNAME, 12351, attesa per i nuovi txns
2008031H, qualcuno, 12352, dare STE, prendere GVO, transazione presentata
2008031I, qualcuno, 12353, in attesa di lavorazione
2008031J, qualcuno, 12354, Recupero risposta
2008031K, qualcuno, 12355, Questa non è una valida trattare
2008031L, QUALCUNO, 12356, membro abbia mancato
2008031M, QUALCUNO, 12357, System \u003d 0
2008031N, QUALCUNO, 12358, attesa per i nuovi txns

Ho bisogno di ricerca di questo modello
->
"Questa non è una valida trattare"
Quando una linea trovato una corrispondenza, è necessario scrivere nel registro la <UserName> così come il dare e avere valore (ad esempio, ABC, XYZ)

Dopo la scansione di file di cui sopra, errore di registro dovrebbe apparire:
ERRORE: Nome utente (ABC, XYZ)
ERRORE: qualcuno (STE, GVO)

Qualsiasi idee?

Grazie in anticipo ragazzi.
  #2 (permalink)  
Old 03-18-2008
epoca
Valutazione
  
 

Messaggi: n / a
Bit: 0 [Banking]
Operazioni possono essere mescolate nel file di log, o tutti i dettagli di una transazione su linee adiacenti, e tutte le linee adiacenti appartengono alla stessa operazione, o segnano il confine per la prossima operazione?

Se una transazione sempre inizio con il "dare" e "prendere" roba? Se una transazione sempre con il fine "di attesa per i nuovi txns" linea?

Codice:
vnix$ perl -ne 'if (/give ([^,]*), take ([^,]*), transaction submitted/) { $give = $1; $take = $2; }
    if (/Waiting for new txns/) { $give = $take = undef; }
    if (/, ([^,]*), [^,]*, This is not a valid/) { print "UPPERCASE: $1 ($give, $take)\n"}' /tmp/txn 
UPPERCASE: USERNAME (ABC, XYZ)
UPPERCASE: SOMEONE (STE, GVO)
Penso che tutte le lettere maiuscole è un'indicazione del fatto che questo è il settore finanziario stiamo trattando qui ...?
  #3 (permalink)  
Old 03-18-2008
Jim McNamara jim mcnamara is offline Forum Staff  
...@...
  
 

Iscriviti Data: febbraio 2004
Ubicazione: MN
Messaggi: 5.763
prendere in considerazione e awk versione:
Codice:
csadev:/home/jmcnama> cat t.awk   
awk -F, 'BEGIN { give=""}
         {
            if($4 ~ /give/){
                  give=sprintf("%s%,%s" ,
                        substr($4, length($4)-3),
                        substr($5, length($5)-3 ) )
                  }
            if($4 ~ /This is not a valid dealing/) {
                printf("ERROR: %s (%s)\n", $2, give)
                }
         } ' filename

csadev:/home/jmcnama> cat filename
2008031A, USERNAME, 12345, give ABC, take XYZ, transaction submitted
2008031B, USERNAME, 12346, waiting for processing
2008031C, USERNAME, 12347, Retrieving response
2008031D, USERNAME, 12348, This is not a valid dealing
2008031E, USERNAME, 12349, State has failed
2008031F, USERNAME, 12350, System=0
2008031G, USERNAME, 12351, Waiting for new txns
2008031H, SOMEONE, 12352, give STE, take GVO, transaction submitted
2008031I, SOMEONE, 12353, waiting for processing
2008031J, SOMEONE, 12354, Retrieving response
2008031K, SOMEONE, 12355, This is not a valid dealing
2008031L, SOMEONE, 12356, State has failed
2008031M, SOMEONE, 12357, System=0
2008031N, SOMEONE, 12358, Waiting for new txns

csadev:/home/jmcnama> t.awk
ERROR:  USERNAME ( ABC, XYZ)
ERROR:  SOMEONE ( STE, GVO)
  #4 (permalink)  
Old 03-18-2008
gholdbhurg gholdbhurg is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Interventi: 26
Hi epoca / jim,
Grazie per la rapida risposta.

>>>
Hi epoca,
La mia risposta di seguito:
1. Operazioni possono essere mescolate nel file di log, o tutti i dettagli di una transazione su linee adiacenti, e tutte le linee adiacenti appartengono alla stessa operazione, o segnano il confine per la prossima operazione?
ANS:
Sì, tutti i dettagli di una transazione sarà adiacente a righe, e tutte le linee adiacenti appartengono allo stesso utente / transazione.

2. Se una transazione sempre inizio con il "dare" e "prendere" roba? Se una transazione sempre con il fine "di attesa per i nuovi txns" linea?
ANS:
Sì che sarà sempre la linea di tutti i txns, ma alla fine le linee può variare.
Per quelli di successo, non vi è alcuna abitudine "Questo non è un valido trattare" linea nel mezzo.
>>>

Btw, se possibile, preferirei questo in perl

Speranza di sentire dagli altri guru.
Apprezzo molto.

Ultimo a cura di gholdbhurg; al 03/18/2008 12:41 PM..
Closed Thread

Segnalibri

Thread Tools Cerca in questo Thread
Cerca in questo Thread:

Ricerca Avanzata
Modalità di visualizzazione Vota questo thread
Vota questo thread:

Distacco regolamento
Tu non può post nuovo thread
Tu non può inviare una risposta
Tu non può postare allegati
Tu non può modificare i tuoi post

BB codice è Su
Smilies sono Su
[IMG] codice Su
Codice HTML è Chiuso
Trackbacks sono Su
Pingbacks sono Su
Refbacks sono Su




Tutti gli orari sono GMT -4. La data di oggi è 09:00 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traduzioni Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX e Linux Forum Content Copyright © 1993-2009. Tutti i diritti Reserved.Ad di gestione da RedTyger

Contenuti pertinenti URL da vBSEO 3.2.0