WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 09.11.2004, 11:21   #1
spunz
Super-Moderator
 
Registriert seit: 22.03.2000
Beiträge: 9.666


spunz eine Nachricht über ICQ schicken
Standard awk problem

ich möchte den inhalt einer datei mit awk addieren. in der datei sind zeilenweise werte eingetragen, in etwa so:

Code:
10000
20000
30000
ich bekomme es leider nicht hin die zeilen einzeln einzulesen und mit awk zu addieren. entweder streut awk irgendwelche steuerzeichen rein, oder jede zeile wir mit sich selbst addiert und nicht mit den anderen

jemand ne idee?
spunz ist offline   Mit Zitat antworten
Alt 09.11.2004, 12:24   #2
_m3
Inventar
 
Registriert seit: 24.09.2001
Beiträge: 7.335


Standard

muss es awk sein?
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org .
_m3 ist offline   Mit Zitat antworten
Alt 09.11.2004, 12:27   #3
spunz
Super-Moderator
 
Registriert seit: 22.03.2000
Beiträge: 9.666


spunz eine Nachricht über ICQ schicken
Standard

Zitat:
Original geschrieben von _m3
muss es awk sein?
wenn möglich ja
spunz ist offline   Mit Zitat antworten
Alt 09.11.2004, 13:32   #4
Sloter
Inventar
 
Registriert seit: 05.01.2000
Beiträge: 3.812


Standard

cat file.dat
awk `{ergebnis = ergebnis + $1}
END {print "Ergebnis:",ergebnis}` file.dat

Nicht getestet

Sloter
Sloter ist offline   Mit Zitat antworten
Alt 09.11.2004, 14:06   #5
spunz
Super-Moderator
 
Registriert seit: 22.03.2000
Beiträge: 9.666


spunz eine Nachricht über ICQ schicken
Standard

Zitat:
Original geschrieben von Sloter
cat file.dat
awk `{ergebnis = ergebnis + $1}
END {print "Ergebnis:",ergebnis}` file.dat

Nicht getestet

Sloter
so in der art hatte ich es schon. sobald aber eine zahl aus mehr als 9 ziffern besteht, wird die ausgabe mit sonderzeichen unbrauchbar gemacht.

zb: statt 2222222222 kommt 2.22222e+09
spunz ist offline   Mit Zitat antworten
Alt 09.11.2004, 17:45   #6
käptn
Inventar
 
Registriert seit: 04.11.2001
Alter: 45
Beiträge: 2.150


Standard

$ php -r 'echo array_sum(file("zahlen")), "\n";'



[edit]
"pritnf %d, ergebnis" funktioniert mit awk nicht, scheint an MAX_INT zu liegen...

~
____________________________________
LOL - Mein erstes Post im Programmier Forum

MACINTOSH - Most Applications Crash, If Not The Operating System Hangs
käptn ist offline   Mit Zitat antworten
Alt 09.11.2004, 19:02   #7
_m3
Inventar
 
Registriert seit: 24.09.2001
Beiträge: 7.335


Standard

Code:
 perl -nle '$x += $_; END {print $x;}' x.txt
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org .
_m3 ist offline   Mit Zitat antworten
Alt 11.11.2004, 13:47   #8
spunz
Super-Moderator
 
Registriert seit: 22.03.2000
Beiträge: 9.666


spunz eine Nachricht über ICQ schicken
Standard

Zitat:
Original geschrieben von _m3
Code:
 perl -nle '$x += $_; END {print $x;}' x.txt

wärst du so nett am ende noch ein "dividiert durch zwei" einzubauen?

spunz ist offline   Mit Zitat antworten
Alt 11.11.2004, 14:02   #9
_m3
Inventar
 
Registriert seit: 24.09.2001
Beiträge: 7.335


Standard

Code:
perl -nle '$x += $_; END {print $x/2;}' x.txt
Bitte schoen.

Auf wen darf ich die Rechnung schreiben?
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org .
_m3 ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:23 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag