The UNIX and Linux Forums  


Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
behöver för att söka text och produktion tidigare linjer grinds Shell-programmering och Skript 8 05-07-2008 10:31
Parse genom en textfil och output många sophiadun UNIX for Dummies Frågor & Svar 14 02-20-2008 06:08
execl () + omdirigera produktion till textfiler JamesGoh High Level Programming 5 02-18-2008 05:17
Söka och extrahera text från produktionen sjday Shell-programmering och Skript 3 12-07-2007 04:12
Extrahera text i 2 kolumner i utdatafilen. Danska Shakil Shell-programmering och Skript 2 10-19-2007 11:03

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ök i denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 04-28-2008
Raffi raffi is offline
Registered User
  
 

Join Date: april 2008
Inlägg: 3
texten i mellan

Hur kan jag utgångsenergi antalet 2641569270623 från en text fil som heter checkpoint.txt som är en linje-fil (som genereras av en matematik siktningen program) som ser ut som:
pmin \u003d 2641569270623, factor_count \u003d 8, cpu_secs \u003d 1705.793, frac_done \u003d 0.002592, elapsed_secs \u003d 1710.844

Jag försökte sed -n "/ pmin \u003d/,/, faktor / p" checkpoint.txt | sed "$ D" som ouputs ingenting och sed -n "/ pmin \u003d/,/, faktor / p" checkpoint.txt som produktionen hela linjen
  #2 (permalänk)  
Old 04-28-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: februari 2007
Inlägg: 4.330
Prova detta:


Kod:
sed '/^pmin=/s/pmin=\([^,]*\),.*/\1/' file

Hälsningar
  #3 (permalänk)  
Old 04-28-2008
Raffi raffi is offline
Registered User
  
 

Join Date: april 2008
Inlägg: 3
både argument fungerar perfekt. Tack killar!
  #4 (permalänk)  
Old 04-28-2008
Raffi raffi is offline
Registered User
  
 

Join Date: april 2008
Inlägg: 3
är det möjligt att använda denna produktion för att ersätta text från en annan fil i ett kommando?

dvs ersätta "720" i linje 1 i en annan fil med text comtaining "siktade på 720" med 2641569270623 vi extraherade från den ursprungliga filen?

Senast redigerad av Raffi; 04-28-2008 vid 07:48..
  #5 (permalänk)  
Old 04-28-2008
eran era is offline Forum Advisor  
Herder av Useless Cats (På sabbatsår)
  
 

Join Date: mars 2008
Ort: / det är / / bara / bin / sh
Inlägg: 3652

Kod:
sed -e 's/.*pmin=/s%Sieved to [0-9]*%Sieved to /;s/,factor.*/%/' checkpoint.txt |
sed -f - otherfile

Om din sed kommer inte att göra "-f -" du måste spara till en temporär fil.

En upprepning av "siktade på" kan undvikas, men finns kvar som en övning.
  #6 (permalänk)  
Old 04-29-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: februari 2007
Inlägg: 4.330
Du kan också omfatta hela sed kommandot inom sed kommando och pipe att sh:


Kod:
sed '/^pmin=/s/pmin=\([^,]*\),.*/sed '"'"'s%Sieved to [0-9]*%Sieved to \1%'"'"' other_file/' file | sh

  #7 (permalänk)  
Old 04-28-2008
eran era is offline Forum Advisor  
Herder av Useless Cats (På sabbatsår)
  
 

Join Date: mars 2008
Ort: / det är / / bara / bin / sh
Inlägg: 3652
Intervall i sed är varierar hela linjer - / pmin \u003d/,/, faktor / medel skriva ut varje rad som börjar med en rad som innehåller "pmin \u003d" genom en annan linje som innehåller "faktor" (och börjar om igen om ett efterföljande rad matchar "pmin \u003d "igen).

Du kan göra


Kod:
sed -e 's/.*pmin=//;s/,factor.*//' checkpoint.txt

som kommer att ersätta från start i linje med "pmin \u003d" med tom rad och dito från "faktor" till slutet av raden. Resultatet är tryckt oavsett om de är tomma eller inte.
Closed Thread

Komihåglista

Taggar
regex, reguljära uttryck

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 02:17.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0