Wert in einer Spalte umrechnen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
Baldrian
Beiträge: 290
Registriert: 13.05.2004 16:22:39

Wert in einer Spalte umrechnen

Beitrag von Baldrian » 15.01.2007 16:19:34

Moin, ich würde gerne einen Wert in einer Spalte umrechnen, aber das Ergebnis dann wieder in einem ähnlichen Format haben.
Also es geht darum aus einer Zeile wie dieser:

Code: Alles auswählen

/dev/sda6   102398278   Linux
die zweite spalte um zu rechnen um dann dort einen Wert in GB zu haben.
Das Umrechnen ansich ist nicht das Problem

Code: Alles auswählen

echo "scale=3; 102398278/(1024*1024)"| bc -l
würde das zum Beispiel tun, aber der Rest soll halt auch stehen bleiben. Also das am Ende sowas da steht:

Code: Alles auswählen

/dev/sda6         97.654 GB       Linux
Wäre nett wenn mir da jemand helfen könnte
"Was auch immer geschieht, nie dürft ihr so tief sinken,
von dem Kakao, durch den man euch zieht, auch noch zu trinken."

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Beitrag von nepos » 15.01.2007 16:25:40

So z.B.:

Code: Alles auswählen

echo "/dev/sda6   102398278   Linux" | awk '{print $1 "\t" $2/(1024*1024) "GB\t" $3}'
Fürs Runden:

Code: Alles auswählen

echo "/dev/sda6   102398278   Linux" | awk '{print $1 "\t" sprintf("%.3f",$2/(1024*1024)) "GB\t" $3}'

Benutzeravatar
Baldrian
Beiträge: 290
Registriert: 13.05.2004 16:22:39

Beitrag von Baldrian » 15.01.2007 16:48:49

Super :)
vielen Dank für die schnelle Antwort.
Klappt wunderbar.
"Was auch immer geschieht, nie dürft ihr so tief sinken,
von dem Kakao, durch den man euch zieht, auch noch zu trinken."

Antworten