So habe ich eine Datei, die wie folgt aussieht:Summenwerte von bestimmten Spalten mit awk
1 4 6
2 5
3
ich nur bestimmte Spalten summieren möchten, lassen Sie sich den ersten sagen und dritter. Und die Ausgabe sollte wie folgt aussehen:
7
2
3
Ich speichere Anzahl von Spalten (Argumenten) in einer Variablen: x=${@:2}
(weil ich weglassen erstes Argument übergeben, die ein $filename
ist) Wie berechnet man das mit awk in einem Bash-Skript? Ich dachte über etw wie diese
for i in ${@:2}
do
awk -v c=$i '{sum+=$c;print sum}' $fname
done
Aber es funktioniert nicht richtig.
Aber was ist, wenn ich eine größere Anzahl von Argumenten möchte, die in Variable x = $ {@: 2} sind. Zum Beispiel für größere Datei und diese Variable x ist 1 2 3 4 5 6? – davoid
'awk -v c = $ x ...' wenn 'x =" 1 2 3 4 5 6 "'. –
Vielen Dank, ich kämpfte mit awk in For-Schleife, aber Ihre Lösung ist besser :) – davoid