The UNIX and Linux Forums  
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.

Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



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

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Søg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 04-28-2008
raffi raffi is offline
Registreret Bruger
  
 

Join Date: Apr 2008
Stillinger: 3
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
  #2 (permalink)  
Old 04-28-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Indlæg: 4.294
Prøv dette:

Code:
sed '/^pmin=/s/pmin=\([^,]*\),.*/\1/' file
Hilsen
  #3 (permalink)  
Old 04-28-2008
raffi raffi is offline
Registreret Bruger
  
 

Join Date: Apr 2008
Stillinger: 3
både argumenter arbejde perfekt. Thanks a lot fyre!
  #4 (permalink)  
Old 04-28-2008
raffi raffi is offline
Registreret Bruger
  
 

Join Date: Apr 2008
Stillinger: 3
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..
  #5 (permalink)  
Old 04-28-2008
epoke era is offline Forum Advisor  
Herder af Useless Cats (On Sabbatical)
  
 

Join Date: Mar 2008
Location: / der / er / kun / bin / sh
Stillinger: 3652
Code:
sed -e 's/.*pmin=/s%Sieved to [0-9]*%Sieved to /;s/,factor.*/%/' checkpoint.txt |
sed -f - otherfile
Hvis din sed vil ikke gøre "-f -" er du nødt til at gemme på en midlertidig fil.

En gentagelse af "sigtes til" kan undgås, men der er tilbage som en øvelse.
  #6 (permalink)  
Old 04-29-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Indlæg: 4.294
Du kan også omfatte hele sed kommando inden for de sed kommando-og rør det til sh:

Code:
sed '/^pmin=/s/pmin=\([^,]*\),.*/sed '"'"'s%Sieved to [0-9]*%Sieved to \1%'"'"' other_file/' file | sh
  #7 (permalink)  
Old 04-28-2008
epoke era is offline Forum Advisor  
Herder af Useless Cats (On Sabbatical)
  
 

Join Date: Mar 2008
Location: / der / er / kun / bin / sh
Stillinger: 3652
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
der skal erstatte fra starten af linjen gennem "pmin \u003d" med en tom linje, og ditto fra "faktor" frem til slutningen af linjen. Resultatet er stadig trykt uanset om de deraf følgende linje er tom eller ej.
Closed Thread

Bogmærker

Tags
regex, regulære udtryk

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 04:13 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0