The UNIX and Linux Forums  


Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
Flere felt skilletegnene i awk? (Første et mellomrom, og deretter et kolon) doubleminus UNIX for Dummies Spørsmål og svar 3 04-27-2008 04:28
Jeg trenger hjelp telle felt og felt skilletegnene bruker Nawk scrappycc Shell programmering og Skripting 3 02-06-2008 11:47
kan du viderekobler flere filer for skriving? Matrix_Prime UNIX for Dummies Spørsmål og svar 4 02-27-2005 07:07
Awk flere Felt Skilletegn Tonka52 Shell programmering og Skripting 7 04-07-2004 10:37
Utdata flere felt fra databasefilen Dennz UNIX for Dummies Spørsmål og svar 3 09-01-2003 01:41

 
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Søk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 04-25-2008
kinksville kinksville is offline
Registrert bruker
  
 

Bli Dato: april 2008
Innlegg: 7
Cool Flere inndatafeltet Skilletegn i awk.

Jeg så et par av innleggene her refererer hvordan de skal håndtere mer enn ett inndatafeltet skilletegn i awk. Jeg tenkte jeg skulle dele hvordan jeg (rettferdig!) Funnet ut hvordan du aktiverer denne linjen i en logfile:

90000000000000000000010001 navn D0.90000000000103787900010001QF840840916070000007085814Y216254 @ D1111111111111111 \u003d 1107xxxxxxxxxxxxxxx x919MENCHIES

inn i dette formatet:

90000000000000000000010001, navn, 840840916070000007085814Y216654, 1111111111111111,1107,919 MENCHIES

Jeg har en hel script siden dette er bare ett skritt i en prosess med å snu logger seg nyttig informasjon, men her over den aktuelle delen.

# Author: kinksville
# Date: 24 april 2008
# Revidert: 24 april 2008
# Revisjon: 1.00 Revisjon
# Andre filer: cclookup.s, cclookup.rep
# Changelog:
# 24 april 2008: Innledende opprettelsen av skriptet.
#
# End changelog.

BEGIN (
FS \u003d "[\. QF \ @ D \u003d x] +"
OFS \u003d ""
)
# Første gjennomkøyring av @ D søket, stripping ut. karakter og setter inn en OFS.
/ \ @ D / (# Søk etter alle linjer som inneholder strengen @ D
report2 \u003d "cclookup.rep2"; # Definer report2 variabel.
Rapporten \u003d "cclookup.rep"; # Definer rapport variabel.
num_cclookup + +; # Få antall auth forespørsler.
print $ 1, $ 2, $ 5, $ 6, $ 7, $ 8> rapport;
print $ 0> report2;
) # End of the @ D søket.


Nøkkelen er at awk vil godta et regulært uttrykk som file separator. Dette regexp FS \u003d "[\. QF \ @ D \u003d x] +" kamper mellomrom,. strengen KF, strengen @ D, \u003d, og tegnet x. Den + etter den etterfølgende braketten er nøkkelen, siden det gir mulighet for 1 eller flere forekomster av noen av tegnene matchet av regulært uttrykk.

Det betyr at x og xxxxxx er begge behandles som ett enkelt felt separator.

Jeg fortsatt må jobbe med resultatet, siden nå jeg trenger å trimme navnet bort fra slutten av det siste feltet. Dessverre nummeret i det siste feltet kan variere alt fra 9999999 til 1 og som er den delen som jeg ønsker å bevare. Kanskje en [^ 0-9] + uttrykk?
 

Hugseliste

Tags
awk, awk trim, trim, trim awk

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er




Alle klokkeslett er GMT -4. Nå er klokken 07:46.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0