![]() |
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Regler | Links | Albums | FAQ | Members List | Kalender | Søgning | Dagens Stillinger | Mark Forums Read |
| Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her. |
Mere UNIX og Linux Forum Emner du måske kan finde Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Last Post |
| ksh - læs filen med førende rum | momi | Shell Programmering og Scripting | 2 | 03-17-2008 03:02 PM |
| Stripping førende rum på højre berettiget navn | Marcia P | UNIX for dummyer Spørgsmål & svar | 2 | 02-28-2006 10:32 PM |
| Fjernelse førende og efterfølgende mellemrum af data mellem de tags i XML. | jhmr7 | UNIX for dummyer Spørgsmål & svar | 2 | 05-18-2005 10:27 AM |
| Striben førende og efterfølgende mellemrum kun i en shell variable med indlejret rum | jerardfjay | Shell Programmering og Scripting | 6 | 03-07-2005 02:24 PM |
| Førende og efterfølgende mellemrum | sleepster | Shell Programmering og Scripting | 7 | 10-29-2003 11:48 PM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
fjerne førende rum fra en linje
Hej venner
Jeg har brug for hjælp, Jeg har en fil, der ser ud som følger TEMP 014637065 014637065 517502 517.502 RTE 517502 517502 RTE AWATER_TEST 12325 23563 588323 2323 5656 32385 23235635 ANOTHER_TEST 12 5433 FTHH 5653 833 TEST 123 123 3235 5353 353 53 35 353 535 3 YTERS GJK JKLS når der nogensinde er en førende plads på linje (her er der et mellemrum i starten af linje 2 og 6, der ikke kan ses i tråd), jeg har brug for at fjerne det og vedhæfte den foregående linje. Dette betyder, at jeg ønsker en output-fil der ligner TEMP 014637065 517502 014637065 517502 RTE 517502 517502 RTE AWATER_TEST 12325 23563 588323 2323 5656 32385 23235635 ANOTHER_TEST 12 5433 FTHH 5653 833 TEST 123 123 3235 5353 353 53 35 353 535 3 YTERS GJK JKLS |
|
||||
|
Citat:
Jeg forsøgte med ovenstående løsning er at give syntaksfejl for anden linie fejlmeddelelser ******* awk: syntaksfejl nær linje 1 awk: bailing ud nær linje 1 ******* også jeg forsøgt med awk '/ ^ / (print p $ 0; næste) (p \u003d $ 0) END (print)', men her er det vil ikke betragte strækninger uden en førende plads pls hjælp Senest redigeret af lijojoseph; 03-15-2008 kl 09:12 AM.. |
|
||||
|
Frank,
thanks a lot den virker perfekt med nawk. her har jeg også et lille problem hvis der er førende rum i 2 på hinanden følgende linjer så er det ikke overvejer det andet .. det er *** Inddatafil TEMP 014637065 014637065 517502 517.502 RTE 517502 517502 RTE 226 AWATER_TEST 12325 23563 588323 2323 5656 32385 23235635 ANOTHER_TEST 12 5433 FTHH 5653 833 TEST 123 123 3235 5353 353 53 35 353 535 3 YTERS GJK JKLS hvis ledende rum er der i linie 2 og 3 er udskriften skal se ud TEMP 014637065 517502 014637065 517502 RTE 517502 517502 RTE 2634 AWATER_TEST 12325 23563 588323 2323 5656 32385 23235635 ANOTHER_TEST 12 5433 FTHH 5653 833 TEST 123 123 3235 5353 353 53 35 353 535 3 YTERS GJK JKLS Kan du pls hjælp? Også kan du bare explane mig awk kode, hvis du har tid Endnu en gang mange tak for youe hjælp ![]() |
|
||||
|
Prøv dette:
Code:
awk '
/^ /{p=p $0;next}
p{print p}
{p=$0}
END{print p}
' file
/ ^ / (P \u003d p $ 0; næste) # Konkatenere linjer, der begynder med et rum med den foregående linje og læse næste linje De næste kommandoer virkning de andre linjer: p (print p) # Udskriv foregående linje, hvis der (p \u003d $ 0) # Set p END (print p) # Der er ikke flere linjer, udskrive foregående linje (r) Brug nawk eller / usr/xpg4/bin/awk på Solaris Hilsen |
![]() |
| Bogmærker |
| Tags |
| Solaris |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|