Ich habe eine TXT-Datei mit einer Spalte. es sind ungefähr 8000 Zahlen. Wie kann ich diese Datenspalte mit 1000000 multiplizieren?
Ich habe eine TXT-Datei mit einer Spalte. es sind ungefähr 8000 Zahlen. Wie kann ich diese Datenspalte mit 1000000 multiplizieren?
Antworten:
Wenn die Zahlen in der Datei Ganzzahlen oder einfache Gleitkommawerte sind, können Sie das numfmt
Dienstprogramm mit verwenden --from-unit=
, um die gewünschte Skalierung anzugeben.
Ex. gegeben
$ cat file
1.23
5
3.45
17
6.78
23
dann
$ numfmt --from-unit=100000 < file
123000.00
500000
345000.00
1700000
678000.00
2300000
Sie können printf
der Ausgabe eine Vielzahl von Formatierungen hinzufügen, z
$ numfmt --from-unit=100000 --format="%'12.2f" < file
123,000.00
500,000.00
345,000.00
1,700,000.00
678,000.00
2,300,000.00
Alternativ mit sed
und bc
:
sed 's/$/ * 100000/' file | bc
oder (umgekehrte polnische Variante)
sed 's/$/ 100000 * p/' file | dc
bc
im letzten Befehl sein oder ist dc
etwas anderes?
dc
ist etwas anderes - siehe zum Beispiel Wie unterscheidet sich bc von dc?
sed 's/$/000000/' file.txt