The UNIX and Linux Forums  
Hej och välkommen från USA till UNIX och Linux Forum! Tack för ditt besök och gå med i vår globala gemenskapen.

Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
Sed Range Utgåva Wrathe Shell-programmering och Skript 2 06-17-2008 03:54
nawk-how räkna antalet förekomster av ett mönster, då vet inte mönstret cyber111 Shell-programmering och Skript 2 05-11-2008 03:00
SED sökmönstret och ersätt med Mönsterredigeraren racbern Shell-programmering och Skript 4 03-15-2008 05:59
Mönster söka mönster i c-filer murthybptl Shell-programmering och Skript 6 11-17-2007 09:15
Sök fil för mönster och ta några rader innan mönster frustrated1 Shell-programmering och Skript 2 12-22-2005 03:41

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 Sök i denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 02-26-2008
sjönk sank is offline
Registered User
  
 

Join Date: februari 2008
Inlägg: 24
Hjälp behövs sed antal mönster

Hej alla,

Jag använder sed för att extrahera de linjer som sker mellan den 2 mönster med hjälp av följande kommando:

sed -n '/ pattern1 /, / pattern2 / "filename

Ovanstående kommando har inga problem och fungerar bra. Men jag undrar om det är ett sätt att avsluta sed när den har utvunnits intervallet minst en gång? detta är nödvändigt eftersom filen kommer endast att ha en förekomst av detta mönster sortiment och även indatafilen som sed fungerar är stor.

tack på förhand.
sjönk.
  #2 (permalänk)  
Old 02-26-2008
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programmerare, författare
  
 

Join Date: mars 2007
Ort: Toronto, Kanada
Inlägg: 2361
Citat:
Ursprungligen postat av sjönk View Post
Hej alla,

Jag använder sed för att extrahera de linjer som sker mellan den 2 mönster med hjälp av följande kommando:

sed -n '/ pattern1 /, / pattern2 / "filename

Ovanstående kommando har inga problem och fungerar bra. Men jag undrar om det är ett sätt att avsluta sed när den har utvunnits intervallet minst en gång? detta är nödvändigt eftersom filen kommer endast att ha en förekomst av detta mönster sortiment och även indatafilen som sed fungerar är stor.

Kod:
sed -n -e '/pattern1/,/pattern2/' -e '/pattern2/q' filename
  #3 (permalänk)  
Old 02-27-2008
sjönk sank is offline
Registered User
  
 

Join Date: februari 2008
Inlägg: 24
Hej,

tack för svaret. Det fungerar bra när pattern1 och pattern2 är helt olika. I vissa fall pattern2 kommer att vara en del av pattern1 och i detta fall kommer det att bara skriva ut pattern1 och utgångar. hur kan vi undvika detta?

Även pattern2 kan förekomma (flera gånger) innan pattern1 sig eftersom det kan koppla ihop sig med andra mönster för att bilda en annan. ja, hur kan vi ändra kommandot så att "-e '/ pattern2 / q" delen är effektivt endast om sökningen i området?

tack igen
sjönk.
  #4 (permalänk)  
Old 02-27-2008
Klashxx's Avatar
Klashxx Klashxx is offline Forum Advisor  
HP-UX/Linux/Oracle
  
 

Join Date: februari 2006
Ort: Almería, Spanien
Inlägg: 393
Prova:
Kod:
awk '/pattern2/&&f{exit}f;/pattern1/{f++}' file

Senast redigerad av Klashxx; 02-27-2008 vid 06:06..
Closed Thread

Komihåglista

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 06:42.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0