Как умножить два столбца в awk?


8

Я хочу умножить столбец 1 на столбец 2 (до конца файла) во входном файле и должен вывести 1 столбец и умножить 3 столбца в отдельном файле.

input.txt:

1 677679866
2 121867616
3 49413198
4 40415982

output.txt:

1 677679866
2 243735232
3 148239594
4 161663928

Здесь есть вопрос?
mikeserv

Ответы:



4

Вот awkрешение:

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

Но вы можете сделать это многими способами, вот perlрешение:

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

Вы можете внести изменения на месте, используя -iопцию:

$ perl -i.bak -ape 's/$F[1]/$F[0]*$F[1]/e' input.txt
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.