The UNIX and Linux Forums  

Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



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
Hoe kan ik lezen een niet tekstbestand in unix - ELF-64 uitvoerbare object file - IA64 alexcol UNIX for Advanced & Expert Gebruikers 8 11-07-2008 08:56
Post Shell programmering: Vraag over de bron van een bestand en lezen van gegevens uit het bestand ccwq Programmeren en Shell Scripting 3 08-04-2007 11:28 PM
Lees de woorden van het bestand en het creëren van nieuwe bestand met K-shell. bsrajirs Programmeren en Shell Scripting 4 06-01-2007 01:15 PM
Lees XML-bestand ram2s2001 Programmeren en Shell Scripting 2 12-12-2005 12:20 AM
Hoe lees specifieke lijnen in een bulk bestand met C bestand Programmering rajan_ka1 Hoog Niveau Programmering 10 11-10-2005 03:29

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 Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 04-25-2008
giorgos193 giorgos193 is offline
Geregistreerde gebruiker
  
 

Join Date: april 2008
Posts: 17
Hulp bij awk - lezen van bestand

Hoi,

Ik heb een bestand als het volgende:

Code:
Starting to process segment 0 (and symmetry related segments)
	Number of (cancelled) singularities: 0
	Number of (cancelled) negative numerators: 0
	Segment 0: 5.49secs
Starting to process segment 1 (and symmetry related segments)
	Number of (cancelled) singularities: 0
	Number of (cancelled) negative numerators: 0
	Segment 1: 10.01secs
Starting to process segment 2 (and symmetry related segments)
	Number of (cancelled) singularities: 0
	Number of (cancelled) negative numerators: 0
	Segment 2: 7.82secs
Starting to process segment 3 (and symmetry related segments)
	Number of (cancelled) singularities: 0
	Number of (cancelled) negative numerators: 0
	Segment 3: 5.31secs
... en ik wil graag voor het uitlezen van de informatie over de tijd. Ik zou graag willen lezen, behalve de tijd (van elke regel) met een variabele, verwijdert u het achtervoegsel secs en dan toevoegen aan de vorige waarde. Het resultaat zal de totale tijd ....

Ik probeerde veel dingen, maar geen van hen werkt ... In geval het helpt, de laatste die ik probeerde was

Code:
 
TIME="`awk '/Segment/ {print $3%secs + $TIME} ' log.txt`"

echo $TIME
Het is een domme oplossing, maar ik denk dat het kan overbrengen wat ik wil doen ....
Ik vermoed dat het iets te maken heeft met het lezen van elke regel separetely, maar ik kan het niet ...

Bedankt op voorhand ...
  #2 (permalink)  
Old 04-25-2008
grumpf grumpf is offline
Geregistreerde gebruiker
  
 

Join Date: May 2006
Posts: 101
dit werkt voor mijn:

awk-F ":" '/ Segmentinformatie / (print $ 2)' bestand.txt
5.49secs
10.01secs
7.82secs
5.31secs

zuivere reservoir:

grep Segment bestand.txt | cut-d:-f2
  #3 (permalink)  
Old 04-25-2008
Franklin52 Franklin52 is online now Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Berichten: 4.313
Probeer dit:
Code:
awk '
/Segment/{match($3,".");t+=substr($3,RSTART)}
END{print "Totaltime :"t}
' file
Groeten
  #4 (permalink)  
Old 04-25-2008
Franklin52 Franklin52 is online now Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Berichten: 4.313
Zelfs:

Code:
awk '/Segment/{t+=$3}END{print "Totaltime :"t}' file
Groeten
  #5 (permalink)  
Old 04-25-2008
tijdperk era is offline Forum Advisor  
Herder van Nutteloze Cats (On Sabbatical)
  
 

Join Datum: maart 2008
Locatie: / er / is / alleen / bin / sh
Berichten: 3652
Voor het toevoegen van de waarden, is het voldoende als je de som op het einde? Dan awk is alles wat u nodig heeft:

Code:
awk '/Segment/ { gsub("secs",""); time += $3 } END { print time }' file.txt
Als je echt echt wilt lus over de cumulatieve tijd en doe iets wat elk in het reservoir, dat zou iets dergelijks

Code:
awk '/Segment/ { gsub ("secs",""); time += $3; print $3, time } file.txt |
while read THISTIME SUMTIME; do
  echo This time, we got $THISTIME
  echo Sum so far is $SUMTIME
done
Het reservoir van de rekenkundige faciliteiten zijn integer, dus u kunt geen som getallen met fractionele delen in het reservoir zelf. Getting awk voor het afdrukken van de huidige en de cumulatieve waarde van elke lijn is een mooie oplossing voor dat (en een goede kans om te laten zien hoe om te lezen meerdere waarden uit dezelfde lijn in de dop).
  #6 (permalink)  
Old 04-25-2008
giorgos193 giorgos193 is offline
Geregistreerde gebruiker
  
 

Join Date: april 2008
Posts: 17
Ik wil u allen bedanken voor je snelle reactie! Alle oplossingen zijn geweldig! Ik waardeer uw inspanning!

@ Tijdperk: Ik ben echt de indruk van uw "geavanceerde" oplossing!

Nogmaals bedankt!
  #7 (permalink)  
Old 04-29-2008
summer_cherry summer_cherry is online now Forum Advisor  
Geregistreerde gebruiker
  
 

Join Date: Jun 2007
Locatie: Beijing China
Berichten: 1.088
Code:
sed '/Segment/ s/secs//' a > b
awk 'BEGIN{FS=":"}
$0 ~ /Segment/ {
if(t=="")
{
	t=$2
	print
}
else
{
	t=t+$2
	print $1" "t
}
}
$0 !~ /Segment/ {print}
' b
rm b
Closed Thread

Bladwijzers

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 04:27.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0