![]() |
|
|
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 |
| hulp nodig met de vervanging van een bepaalde gebied ... | shennanigan83 | Programmeren en Shell Scripting | 5 | 04-09-2008 02:00 |
| Vervangen van tekst | chrchcol | Programmeren en Shell Scripting | 3 | 07-25-2006 01:30 PM |
| Vervanging van bepaalde gebied | Charbel | Programmeren en Shell Scripting | 1 | 04-26-2006 05:00 PM |
| vervangen van tekst | ajaya | Programmeren en Shell Scripting | 2 | 04-12-2006 01:31 PM |
| Vervanging van het laatste veld van een lijn. | Darek | Programmeren en Shell Scripting | 3 | 08-19-2005 12:45 |
![]() |
|
|
LinkBack | Thread Tools | Zoeken in deze Thread | Rate Thread | Display Modes |
|
|
|
||||
|
vervanging van een nul veld met tekst
Ok hier is mijn inmaken. Ik heb een bestand waarvan elke regel moeten dezelfde lengte hebben. Elk veld binnen de lijn een bepaalde lengte. Geen van deze kan worden veranderd. Wat ik moet doen is kijken naar een specifiek gebied binnen dit bestand, laten we zeggen dat het begint met karakter 30 en eindigt met 50. Als dit veld leeg is, ik moet het worden vervangen door een stukje tekst.
Een voorbeeld. Merk op dat veld 3 hieronder in de eerste regel is leeg. Ik nodig om het eruit regel2. Ook moet aan de lijn als er iets is op alle in het veld als in regel 2 en 3. Code:
field1field2 field4 field1field2field3 field4 field1field2sometext field4 Alle hulp wordt gewaardeerd zoals ik ben verschrikkelijk met sed. Laatst gewijzigd door DarkHound; op 08.27.2007 09:41.. Reden: Wanted to fix offsets blijkbaar de raad [code] tags gebruiken geen monospaced lettertypen. |
|
||||
|
Helaas kan ik niet een voorbeeld, het is vertrouwelijke patiëntgegevens en kan niet exact worden ontsmet. Ik kan echter wel wat vermogen / kolom het gebied begint en eindigt op. Het veld begint op kolom 308 en eindigt op kolom 327. In plaats van een leeg, ik wil het gebied te bevatten "Zie Vrije tekst" zonder de aanhalingstekens.
Nee ik wil niet om de grootte van de lijn op geen enkele manier. Het veld, noch aan de lijn die het gebied niet kan veranderen in grootte, anders wordt de importeur heeft een pasvorm. |
|
||||
|
FYI, ik dacht dat het uit door het gebruik van een andere bron. Het volgende is wat deed de truc, voor het geval iemand anders te weten.
perl -pe 's /^(.{ 307)) \ s (20) / $ 1SEE VRIJE TEKST /' input.file> output.file |
![]() |
| Bladwijzers |
| Thread Tools | Zoeken in deze Thread |
| Display Modes | Beoordeel deze draad |
|
|