![]() |
Hallo en welkom van de Verenigde Staten aan de 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 |
| sed zoekopdracht | gopsman | Programmeren en Shell Scripting | 4 | 02-03-2009 02:41 |
| & In SQL-query | Lindarella | Programmeren en Shell Scripting | 3 | 10-09-2006 05:43 PM |
| Query in awk | raguramtgr | UNIX voor Dummies Questions & Answers | 1 | 08-27-2004 12:00 |
| RPM Query | silvaman | UNIX for Advanced & Expert Gebruikers | 1 | 08-15-2003 08:56 |
![]() |
|
|
LinkBack | Thread Tools | Zoeken in deze Thread | Rate Thread | Display Modes |
|
|
|
||||
|
sed zoekopdracht
Ik heb een aantal mappen / temp / a / temp / b / temp / c
In mappen a, b en c, ik heb bestanden a1.txt ... ... .... a20.txt b1.txt ... ... .... b40.txt & c1.txt ... ... .... c60.txt Elk bestand heeft de gegevens in dezelfde vorm: -- Lijn 1 aaaaa aaaa Lijn 2 BBB bbbbbb Lijn 3 cccc cccccc Etc etc Ik moet het schrijven van een sed script dat komt door alle bestanden en het formaat van de gegevens dus: -- Lijn 1 aaaaa aaaa Lijn 2 BBB Lijn 3 X bbbbbb Lijn 4 cccc cccccc Etc etc Dus ik moet u een CR / LF in lijn 2 positie 4, creëren van een nieuwe lijn 3 met een constante tekst (X) en de waarde van wat er aan de rechterkant van de vorige regel 2 (bbbbbb) en verplaats de rest van de regels een regel omlaag. Kan iemand helpen alstublieft? Ik weet het niet sed heel goed, en awk helemaal niet. |
|
||||
|
sed oplossing
Dankzij Anbu23
Toen ik gisteren gepost, ik vereenvoudigde mijn probleem, denk dat ik kon volgen uw logica, en toepassen op mijn eigenlijke probleem. In feite is het lijn 5 positie 32 voordat die de CR / LF wordt ingevoegd. De nieuwe lijn 6 bevat vaste tekst van positie 1 tot en met 31 inclusieve, (X) en plaats 32 tot 34 van lijn 5 zal zijn gedaald tot dezelfde posities op lijn 6. Ik probeerde sed "5 s / \ (... \). \ (.* \) / \ 1 \ \ X \ 2 / '$ bestand> tmp maar dit nog gemorst na 3 karakters. Ik probeerde sed "5 s / \ (............................. \). \ (.* \) / \ 1 \ \ X \ 2 / '$ bestand> tmp maar kreeg een syntaxisfout. Hoop dat u verder kan helpen. Bedankt |
|
||||
|
Voorheen u verteld dat na de eerste paar tekens in sommige lijn moet worden verplaatst naar de volgende regel met X. Maar nu je vertellen dat je moet eerste char en X en resterende char in nieuwe line.I ben niet in staat om je te halen.
Kunt u mij voorbeeld? |
|
||||
|
sed voorbeeld
Hi Anbu23
input Ref: 12345678 ^ M Prijs Datum: 28-mei-2006 ^ M Debet A / c: 54321235 - abcdef ^ M Klant: 100210547 - abcdef ^ M Debet Bedrag: 9999999999,00 USD ^ M Beschrijving: draad aan Wxxxxxx ^ M ^ M Exchange Rate: 1,00000 ^ M etc etc moeten veranderen in Ref: 12345678 ^ M Prijs Datum: 28-mei-2006 ^ M Debet A / c: 54321235 - abcdef ^ M Klant: 100210547 - abcdef ^ M Debet Bedrag: 9999999999,00 ^ M xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx USD ^ M Beschrijving: draad aan Wxxxxxx ^ M ^ M Exchange Rate: 1,00000 ^ M etc etc knippen & plakken heeft gecompenseerd het display aangehaald, maar mijn eerdere lijn 5 positie 31 wordt nauwkeurig. Houd er ook rekening mee dat er veel records in elk bestand, en al moeten worden geformatteerd. Veel dank nogmaals Ik heb waardering voor uw steun. |
![]() |
| Bladwijzers |
| Thread Tools | Zoeken in deze Thread |
| Display Modes | Beoordeel deze draad |
|
|