The UNIX and Linux Forums  


Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her.

Mere UNIX og Linux Forum Emner du måske kan finde Helpful
Tråd Thread Starter Forum Svar Last Post
Multiple feltseparatorer i awk? (Første et mellemrum, og derefter et kolon) doubleminus UNIX for dummyer Spørgsmål & svar 3 04-27-2008 04:28 PM
Jeg har brug for hjælp tælle felter og feltseparatorer bruger Nawk scrappycc Shell Programmering og Scripting 3 02-06-2008 11:47 PM
kan du omdirigere flere filer for input? Matrix_Prime UNIX for dummyer Spørgsmål & svar 4 02-27-2005 07:07 PM
Awk Multiple feltseparatorer Tonka52 Shell Programmering og Scripting 7 04-07-2004 10:37 PM
Output Multiple Field fra databasefil Dennz UNIX for dummyer Spørgsmål & svar 3 09-01-2003 01:41 PM

 
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øg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 04-25-2008
kinksville kinksville is offline
Registreret Bruger
  
 

Join Date: Apr 2008
Stillinger: 7
Cool Multiple input feltseparatorer i awk.

Jeg så et par indlæg her henvisninger, hvordan man håndterer mere end én indgang feltseparator i awk. Jeg regnede jeg ville fortælle, hvordan jeg (kun!) Regnet ud, hvordan du aktiverer denne linje i en logfil:

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

i dette format:

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

Jeg har en hel script, da dette er blot et skridt i en proces med at gøre logger ind nyttige oplysninger, men her ovre den relevante del.

# Forfatter: kinksville
# Dato: April 24, 2008
# Revideret: April 24, 2008
# Revision: Revision 1,00
# Andre filer: cclookup.s, cclookup.rep
# Changelog:
# April 24, 2008: Første etablering af scriptet.
#
# End changelog.

BEGIN (
FS \u003d "[\. QF \ @ D \u003d x] +"
OFS \u003d ","
)
# Første iteration af @ D søgning, fraregnet den. karakter og indsætte en OFS.
/ \ @ D / (# Søg efter hvilken som helst linje, der indeholder strengen @ D
report2 \u003d "cclookup.rep2" # define report2 variabel.
rapport \u003d "cclookup.rep" # define rapport variabel.
num_cclookup + +; # Få flere auth anmodninger.
print $ 1, $ 2, $ 5, $ 6, $ 7, $ 8> rapport;
print $ 0> report2;
) # End of the @ D søgning.


Det centrale er, at awk vil acceptere et regulært udtryk som fil separator. Dette regexp FS \u003d "[\. QF \ @ D \u003d x] +" matcher rum, den. strengen QF, strengen @ D, i \u003d, og karakter x. Den + efter den efterfølgende beslaget er nøglen, da dette giver mulighed for 1 eller flere forekomster af nogen af de tegn, der matches af regexp.

Det betyder, at x og xxxxxx er begge behandles som et enkelt felt separator.

Jeg har stadig brug for at arbejde på produktionen, fordi nu har jeg brug for at trimme det navn fra slutningen af det sidste felt. Desværre er nummeret i det sidste felt kan variere alt fra 9999999 til 1, og det er den del, som jeg ønsker at bevare. Måske en [^ 0-9] + udtryk?
 

Bogmærker

Tags
awk, awk trim, trim, trim awk

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 09:35 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0