![]() |
Hallo en welkom vanaf tot UNIX en Linux Forum! Bedankt voor uw bezoek en Deelnemen aan onze wereldwijde gemeenschap.
|
|
google unix.com
|
|||||||
| Forums | Registreer | Forum Regels | Links | Albums | Veelgestelde vragen | Ledenlijst | Kalender | Zoeken | Today's Posts | Markeer forums als gelezen |
| 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 |
![]() |
|
|
LinkBack | Thread Tools | Zoeken in deze Thread | Rate Thread | Display Modes |
|
|
|
||||
|
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! |
|
||||
|
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"
|
![]() |
| Bladwijzers |
| Thread Tools | Zoeken in deze Thread |
| Display Modes | Beoordeel deze draad |
|
|