![]() |
|
|
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 |
| File Format nummer: Output van sqlplus | deepakgang | UNIX voor Dummies Questions & Answers | 2 | 10-25-2007 04:56 |
| Productie in een bepaald formaat met AWK | Raynon | Programmeren en Shell Scripting | 4 | 01-24-2007 04:07 |
| output formaat | Tornado | Programmeren en Shell Scripting | 7 | 11-19-2006 06:17 |
| Formaat van de output van bestand | getdpg | Programmeren en Shell Scripting | 9 | 01-24-2006 12:50 |
| ls output formaat | tonyt | UNIX voor Dummies Questions & Answers | 6 | 11-23-2001 11:31 |
![]() |
|
|
LinkBack | Thread Tools | Zoeken in deze Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Output formaat - vergelijking met de I / P-bestand
Hoi,
Ik heb een bestand dat meer dan 1 lakh records als het volgende bevat: a. naam, id, stad, staat, land, telefoon (Verwachte I / P file formaat) naam, id, stad, staat, land, telefoon (Current I / P file formaat) Ik wil bereiken volgende taken, a, Verwijder de extra komma in de Stad veld. b, Add / Remove extra string in het id-veld (vb. als ID is 5001 Ik wil naar 0 toe te voegen in het begin, dat wil zeggen, 05001 / in sommige gevallen, als id is 0123 verwijdert 0 vanaf het begin dat wil zeggen, 123. Gelieve advies. Bedankt en groeten, Vel |
|
||||
|
Gebruik SED voor doen
Zaak 1: Voor het verwijderen van meerdere komma's die samen zijn.
sed '1, $ S /,,/,/' bronbestand>> targetfile Case 2: Ik begrijp het als deze. Als de id is beginnend met '0 ', dan elimineren Als het niet beginnend met '0 'en dan toevoegen. Het scenario is vrij lastig ... Laten we zeggen dat we een bestand als deze cat test 1001, aa, bb, cc, dd 1001, aa, bb, cc, dd 1001, aa, bb, cc, dd 1001, aa, bb, cc, dd 011, aa, bb, cc, dd 011, aa, bb, cc, dd 011, aa, bb, cc, dd 011, aa, bb, cc, dd aa, bb, cc, dd aa, bb, cc, dd aa, bb, cc, dd aa, bb, cc, dd aa, bb, c, d en als ik lopen als dit sed '1, $ S / ^ [1-9] / 0 /, 1, $ s / ^ 0 / / 'test Controleer de uitvoer .. 001, aa, bb, cc, dd 001, aa, bb, cc, dd 001, aa, bb, cc, dd 001, aa, bb, cc, dd 11, aa, bb, cc, dd 11, aa, bb, cc, dd 11, aa, bb, cc, dd 11, aa, bb, cc, dd aa, bb, cc, dd aa, bb, cc, dd aa, bb, cc, dd aa, bb, cc, dd aa, bb, c, d maar we didnt nodig hebben .. We moeten onderscheid maken tussen hen .. dus gebruik deze opdracht. sed '1, $ S / ^ [1-9] / -0 & /, 1, $ s / ^ 0 / / 'test>> test1 cat test1 uitgang \u003d\u003d\u003d\u003d\u003d\u003d -01.001, Aa, bb, cc, dd -01.001, Aa, bb, cc, dd -01.001, Aa, bb, cc, dd -01.001, Aa, bb, cc, dd 11, aa, bb, cc, dd 11, aa, bb, cc, dd 11, aa, bb, cc, dd 11, aa, bb, cc, dd aa, bb, cc,, dd aa, bb, cc,, dd aa, bb, cc,, dd aa, bb, cc,, dd aa, bb, c, d Nu u hoeft alleen het verwijderen van de "-" sed 's /^-// g' test1>> test2 cat test2 uitgang \u003d\u003d\u003d\u003d\u003d 01001, aa, bb, cc, dd 01001, aa, bb, cc, dd 01001, aa, bb, cc, dd 01001, aa, bb, cc, dd 11, aa, bb, cc, dd 11, aa, bb, cc, dd 11, aa, bb, cc, dd 11, aa, bb, cc, dd aa, bb, cc, dd aa, bb, cc, dd aa, bb, cc, dd aa, bb, cc, dd aa, bb, c, d Hoop dat ik duidelijk gemaakt. Laat me weten als geen ..... |
![]() |
| Bladwijzers |
| Thread Tools | Zoeken in deze Thread |
| Display Modes | Beoordeel deze draad |
|
|