The UNIX and Linux Forums  
Hallo en welkom vanaf tot UNIX en Linux Forum! Bedankt voor uw bezoek en Deelnemen aan onze wereldwijde gemeenschap.

Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
Unix Arithmatic operatie probleem datatype kwestie thambi Programmeren en Shell Scripting 23 02-19-2008 07:19
specifing assortiment .... zedex UNIX for Advanced & Expert Gebruikers 1 10-19-2007 10:07
Getting 'out of range' als afscherming pmichner UNIX voor Dummies Questions & Answers 1 09-30-2006 02:51
Kijk een string binnen een bereik! azmathshaikh Programmeren en Shell Scripting 0 05-01-2005 04:54
SCO Unix 5.0.6 out of range josramon UNIX voor Dummies Questions & Answers 5 02-21-2003 02:06 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 Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 06-05-2008
Wrathe Wrathe is offline
Geregistreerde gebruiker
  
 

Join Date: juni 2008
Posten: 6
Sed Range Issue

OK, dus voor een groots overzicht van wat ik probeer te doen:

Ik heb 2 bestanden dat zijn meestal willen.
Het formaat is:

[descriptor1]
gegevens
gegevens
gegevens
gegevens

[descriptor2]
gegevens
gegevens
gegevens
gegevens

[descriptor3]
gegevens
gegevens

[descriptor4]
gegevens
gegevens

OK, dus wat ik moet doen is alle gegevens van [descriptor2] en [descriptor3] gedeeltes uit bestand1, verwijdert u graag gedeeltes uit bestand2 en vervolgens plaatst u de stroom uit bestand1 op de juiste plek in bestand2. Leuk, toch?

Nou, ik ben nieuw w / sed, Maar dat schijnt de beste manier om dit te doen (correct me if I'm verkeerd). Ik heb wat code die werkt atm, maar het geeft me de huidige regel [descriptor4] als dat is het einde van het bereik ik gebruik en ik wil het niet te bevatten dat in de sectie verwijderen, hoe kan ik niet maken ze dat doen?

sed '/ \ [descriptor2 /, / \ [descriptor4 /! d' bestand1

Eigenlijk wil ik de output moet worden:

[descriptor2]
gegevens
gegevens
gegevens
gegevens

[descriptor3]
gegevens
gegevens

En het is dat ik dat alles, plus een [descriptor4] als dat is waar de reeks eindigt, maar ik ben niet zeker hoe anders te definiëren.

Dank u voor enig licht kun je een stal!
  #2 (permalink)  
Old 06-05-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Berichten: 4.307
Probeer dit:

Code:
awk ' 
FNR==NR && /descriptor2/{f=1} 
FNR==NR && /descriptor4/{f=0} 
FNR==NR && f{arr[++i]=$0}
FNR==NR{next}
/descriptor2/{for(j=1;j<=i;j++){print arr[j]};f=1} 
/descriptor4/{f=0} 
!f{print}
' "file1" "file2"
Groeten
  #3 (permalink)  
Old 06-17-2008
freelong freelong is offline
Geregistreerde gebruiker
  
 

Join Date: april 2008
Posts: 38
Code:
sed -e '/\[descriptor2/,/\[descriptor4/!d' -e '/\[descriptor4/d' file1
Closed Thread

Bladwijzers

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 12:31 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0