The UNIX and Linux Forums  

Go Back   A UNIX és Linux Forums > Top Fórumok > Shell programozás és Scripting
.
google unix.com



Shell programozás és Scripting Post kérdések KSH, CSH, SH, Bash, Perl, PHP, SED, AWK ÉS EGYÉB shell szkriptek és shell script nyelvek itt.

Több, UNIX és Linux fórum témák Ön által talált Hasznos
Szál Thread Starter Fórum Válaszok Utolsó hozzászólás
kijelző változó változó egy helyen, a képernyőn a KSH raidzero Shell programozás és Scripting 7 09-25-2008 10:24 AM
ismételni. bemutatkozása után változó változó sboxtops AIX 2 09-02-2008 03:19 PM
bash szkript futását egy változó, egy sorban shoeb Shell programozás és Scripting 1 07-06-2008 05:14 AM
IFS változó a változó értéke pvar Shell programozás és Scripting 1 02-25-2005 06:21 PM
Nagyon egyszerű kérdés változó PS1 változó induláskor! abidmalik A UNIX a dummies Kérdések és válaszok 2 08-26-2002 02:05 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Téma eszközök Keresés a téma Rate Thread Megjelenítési módok
  #1 (permalink)  
Old 11-18-2008
sx3v1l_1n51de sx3v1l_1n51de is offline
Regisztrált felhasználó
  
 

Join Date: Jan 2005
Hozzászólások: 27
Talking Segítség a awk script, az FS változó, hogy egy változó

Hi all, im új awk és apreciate ha nem mondja meg, hogyan kell ezt csinálni, van egy fájl több bejegyzés, mint ez:

Kód:
2008-09-09 21:57:45   44  403 CUSTOM_EVENT                      Upgrade - end1
2008-09-09 21:57:46   45  403 CUSTOM_EVENT                      Component Check - start
2008-09-09 21:57:56   46  403 CUSTOM_EVENT                      Component Check - end
2008-09-09 21:57:56   47  403 CUSTOM_EVENT                      OSChecksum - start
2008-09-09 21:59:15   48  403 CUSTOM_EVENT                      OSChecksum - end
2008-09-09 21:59:15   49  403 CUSTOM_EVENT                      SELLogCheck - start
2008-09-09 22:01:39   50  403 CUSTOM_EVENT                      SELLogCheck - end
2008-09-09 22:01:40   51  403 CUSTOM_EVENT                      USB to Serial Connection Test - start
2008-09-09 22:43:46   52  403 CUSTOM_EVENT                      USB to Serial Connection Test - start
2008-09-09 22:44:15   53  403 CUSTOM_EVENT                      MemoryCheck - start
2008-09-09 22:44:16   54  403 CUSTOM_EVENT                      MemoryCheck - end
im kipróbálás-hoz kap az értékeket az utolsó mező, amely az az esemény leírását (például USB-soros Connection Test - Start), de kell, hogy külön erre a területre a "-" hogy tudja, ha a vizsgálat indult vagy véget ért, az utolsó mező egy kicsit változó úgy gondoltam y jönne valami ilyesmi:

cat $ 1 | awk '(description \u003d $ 6 "" 7 $ "" $ 8 "" $ 9 "" $ 10 "" 11 $ "" $ 12 "" $ 13 "" 14 $ "" $ 15; nyomtatott description)'

Először kap minden területen 6-15, majd az I. tryed változik az FS - és kiírja a második mező ...

cat $ 1 | awk '(description \u003d $ 6 "" 7 $ "" $ 8 "" $ 9 "" $ 10 "" 11 $ "" $ 12 "" $ 13 "" 14 $ "" $ 15; FS \u003d "-"; nyomtatott leírás $ 2)'

persze, hogy kiírja a második mező az egész sort, amely az év ... hehe ... Van úgy, hogy elmondja, hogy awk kimeneti változó a második által behatárolt területen a "-"?

thanks all
  #2 (permalink)  
Old 11-18-2008
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
Addict
  
 

Join Date: Jan 2007
Helyszín: Варна, България / Milano, Olaszország
Hozzászólások: 2.889
Az AWK:

Kód:
awk '{
  for (i=6; i<=NF; i++) 
    s = s ? s FS $i : $i    
  split(s, t, "-")
  print "desc:", t[1], "state:", t[2]
  s = ""  
}' infile
Vele Perl:

Kód:
perl -lane'
  print "desc: @F[5..$#F-2] state: $F[-1]"
  ' infile
  #3 (permalink)  
Old 11-18-2008
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
Addict
  
 

Join Date: Jan 2007
Helyszín: Варна, България / Milano, Olaszország
Hozzászólások: 2.889
Igazából nem kell hasadás kifejezetten AWK:

Kód:
awk '{
  for (i=6; i<=NF-2; i++) 
    s = s ? s FS $i : $i    
  print "desc:", s, "state:", $NF
  s = ""  
}' infile

Last edited by radoulov; 11/18/2008 at 04:17 PM..
  #4 (permalink)  
Old 11-18-2008
joeyg's Avatar
joeyg joeyg is offline Forum Staff  
modérateur
  
 

Join Date: Dec 2007
Helyszín: Home 17-idő világ bajnok Boston Celtics
Hozzászólások: 1311
Cool Nem biztos benne, hogy a kívánt eredményt, de

Új hozzászólás, hogy a két terület szétvált, és hozzátette: az "ed" a cselekvés ige (csak azért, mert így jobban hangzik.)

Kód:
> cat file74
2008-09-09 21:57:45   44  403 CUSTOM_EVENT                      Upgrade - end1
2008-09-09 21:57:46   45  403 CUSTOM_EVENT                      Component Check - start
2008-09-09 21:57:56   46  403 CUSTOM_EVENT                      Component Check - end
2008-09-09 21:57:56   47  403 CUSTOM_EVENT                      OSChecksum - start
2008-09-09 21:59:15   48  403 CUSTOM_EVENT                      OSChecksum - end
2008-09-09 21:59:15   49  403 CUSTOM_EVENT                      SELLogCheck - start
2008-09-09 22:01:39   50  403 CUSTOM_EVENT                      SELLogCheck - end
2008-09-09 22:01:40   51  403 CUSTOM_EVENT                      USB to Serial Connection Test - start
2008-09-09 22:43:46   52  403 CUSTOM_EVENT                      USB to Serial Connection Test - start
2008-09-09 22:44:15   53  403 CUSTOM_EVENT                      MemoryCheck - start
2008-09-09 22:44:16   54  403 CUSTOM_EVENT                      MemoryCheck - end

> cut -c65- file74 | awk '{FS="-"}{print $1" _which was_ "$2"ed"}'
Upgrade _which was_ -ed
Component Check  _which was_  started
Component Check  _which was_  ended
OSChecksum  _which was_  started
OSChecksum  _which was_  ended
SELLogCheck  _which was_  started
SELLogCheck  _which was_  ended
USB to Serial Connection Test  _which was_  started
USB to Serial Connection Test  _which was_  started
MemoryCheck  _which was_  started
MemoryCheck  _which was_  ended
Closed Thread

Könyvjelzõk

Téma eszközök Keresés a téma
Keresés a téma:

Részletes keresés
Megjelenítési módok Rate this thread
Rate this thread:

Posting szabályzat
Ön nem post new threads
Ön nem post válaszok
Ön nem post Csatolmányok
Ön nem szerkeszteni az üzeneteidet

BB kód van Be
Smilies vannak Be
[IMG] kód Be
HTML kód Ki
Trackbacks vannak Be
Pingbacks vannak Be
Refbacks vannak Be




Minden idő GMT -4. Az idő most 12:13 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Nyelvre lefordítva Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
A UNIX és Linux Fórum Tartalom Copyright © 1993-2009. Minden jog Reserved.Ad menedzsment RedTyger

Content Relevant URLs by vBSEO 3.2.0