Come moltiplicare due colonne in awk?


8

Voglio moltiplicare la colonna 1 con la colonna 2 (fino alla fine del file) nel file di input e dovrei generare 1 colonna e moltiplicare 3 colonne in un file separato.

input.txt:

1 677679866
2 121867616
3 49413198
4 40415982

output.txt:

1 677679866
2 243735232
3 148239594
4 161663928

C'รจ una domanda qui?
mikeserv,

Risposte:



4

Ecco una awksoluzione:

$ awk '$0=$1" "$1*$2' input.txt 
1 677679866
2 243735232
3 148239594
4 161663928

Ma puoi farlo in molti modi, ecco una perlsoluzione:

$ perl -ape 's/$F[1]/$F[0]*$F[1]/e' input.txt
1 677679866
2 243735232
3 148239594
4 161663928

Puoi apportare modifiche sul posto, usando l' -iopzione:

$ perl -i.bak -ape 's/$F[1]/$F[0]*$F[1]/e' input.txt
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.