P
Palima
Grünschnabel
Servus
ich muss derzeit ein Skript schreiben und benutze zum ersten mal awk ... nun irgendwie komm ich nicht weiter ... hoffe ihr könnt mir helfen
ich soll mein skript dermassen ausführen:
grades.sh 50 65 75 85 100 < Beispiel.txt
wobei ich die argumente gerne fix gespeichert hätte, weil ich sie zur Auswertung brauche ...
wenn ich aber einfach sage
x= $1
dann merkt er sich das nur solange bis ich die Beispiel.txt mit getline einlese ... dann werden die inhalte überschrieben
gibts ne möglichkeit die zu behalten?
vielen dank im voraus
Christoph
PS: hier der Code
ich muss derzeit ein Skript schreiben und benutze zum ersten mal awk ... nun irgendwie komm ich nicht weiter ... hoffe ihr könnt mir helfen
ich soll mein skript dermassen ausführen:
grades.sh 50 65 75 85 100 < Beispiel.txt
wobei ich die argumente gerne fix gespeichert hätte, weil ich sie zur Auswertung brauche ...
wenn ich aber einfach sage
x= $1
dann merkt er sich das nur solange bis ich die Beispiel.txt mit getline einlese ... dann werden die inhalte überschrieben
gibts ne möglichkeit die zu behalten?
vielen dank im voraus
Christoph
PS: hier der Code
ich möchte nun die Argumente ns1 bis ns5 auch in der zweiten awk-Anweisung verwenden können ... wie könnte das gehen?awk "BEGIN { ns[1]= $1; #print ns1
ns2 = $2; #print ns2
ns3 = $3; #print ns3
ns4 = $4; #print ns4
ns5 = $5; #print ns5
}"
awk '{
x1=x2=x3=x4=x5=0;
do {
#print tmp;
if($5<= 100 && $5 > 85) {x1++}
if($5< 85 && $5 >=75) {x2++}
if($5< 75 && $5 >=65) {x3++}
if($5< 65 && $5 >=50) {x4++}
if($5< 50 && $5 >=0) {x5++}
#print $5;
SUMStudent = NR
} while (getline != 0)
print "Anzahl der Studenten: \t" SUMStudent;
av1 = x1/SUMStudent *100;
av2 = x2/SUMStudent *100;
av3 = x3/SUMStudent *100;
av4 = x4/SUMStudent *100;
av5 = x5/SUMStudent *100;111
print "Notenskala \t Note \tAnzahl \tAnteil"
print "85 - 100 \t 1 \t" x1 "\t" av1 "%"
print "75 - 85 \t 2 \t" x2 "\t" av2 "%"
print "65 - 75 \t 3 \t" x3 "\t" av3 "%"
print "50 - 65 \t 4 \t" x4 "\t" av4 "%"
print "<50 \t\t 5 \t" x5 "\t" av5 "%"
}'
Zuletzt bearbeitet: