![]() |
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 |
| behovet for at søgetekst og output foregående linjer | grinds | Shell Programmering og Scripting | 8 | 05-07-2008 09:31 AM |
| parses gennem en tekstfil og output mange | sophiadun | UNIX for dummyer Spørgsmål & svar | 14 | 02-20-2008 06:08 AM |
| execl () + omdirigere output til tekstfiler | JamesGoh | Højtstående Programmering | 5 | 02-18-2008 05:17 PM |
| Søgning og udvinding af tekst fra output | sjday | Shell Programmering og Scripting | 3 | 12-07-2007 04:12 AM |
| Uddrag tekst i 2 kolonner i outputfil. | Dansk Shakil | Shell Programmering og Scripting | 2 | 10-19-2007 10:03 AM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
output teksten i mellem
Hvordan kan jeg output antallet 2641569270623 fra en tekst fil kaldet checkpoint.txt, der er en én linje fil (genereret af en matematik sigtningen program), som ligner:
pmin \u003d 2641569270623, factor_count \u003d 8, cpu_secs \u003d 1705.793, frac_done \u003d 0.002592, elapsed_secs \u003d 1710.844 Jeg forsøgte sed -n "/ pmin \u003d/,/, faktor / p" checkpoint.txt | sed "$ D" som ouputs intet og sed -n "/ pmin \u003d/,/, faktor / p" checkpoint.txt som output hele linjen |
|
||||
|
er det muligt at bruge dette output til at erstatte tekst fra en anden fil i en kommando?
dvs: erstatte "720" på linje 1 i en anden fil med tekst comtaining "sigtes til 720" med 2641569270623 vi udvundet fra den originale fil? Sidst redigeret af raffi; 04-28-2008 på 06:48 PM.. |
|
||||
|
Code:
sed -e 's/.*pmin=/s%Sieved to [0-9]*%Sieved to /;s/,factor.*/%/' checkpoint.txt | sed -f - otherfile En gentagelse af "sigtes til" kan undgås, men der er tilbage som en øvelse. |
|
||||
|
Værdiskalaer i sed er værdiskalaer for hele linjer - / pmin \u003d/,/, faktor / betyder udskrive hver linje starter med en linje, der indeholder "pmin \u003d" gennem en anden linje, der indeholder "faktor" (og starter forfra, hvis en efterfølgende linje matcher "pmin \u003d "igen).
Du kan gøre Code:
sed -e 's/.*pmin=//;s/,factor.*//' checkpoint.txt |
![]() |
| Bogmærker |
| Tags |
| regex, regulære udtryk |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|