1

如何使用 awk 将列 col23 乘以 10 和 col24 乘以 20?谢谢你看这个:)

city    town    id  col1   col2   col3   col4   col21   col22   col23   col24
----------------------------------------------------------------------------------
dublin  town1   1   1       2       3       5       1       2       3       4
dublin  town1   2           2       8       10      6       7       8       9
dublin  town1   3           12      13      15      11      12      13      14
dublin  town2   4   1       2       3       5       1       2       3       4
dublin  town2   5   6       7       8       10      6       7       8       9
dublin  town2   6   11      12      13      15      1       12      13      14

我试过了,但似乎不起作用 awk -F, '{$10*10;print}' OFS=, inputFile

4

1 回答 1

4

由于 col23 在 col10 中,而 col24 在 col11 中,这样的东西可以使它:

$ awk '/dublin/{$10*=10; $11*=20}1' OFS="\t" file
city    town    id  col1   col2   col3   col4   col21   col22   col23   col24
----------------------------------------------------------------------------------
dublin  town1   1       1       2       3       5       1       2       30      80
dublin  town1   2       2       8       10      6       7       8       90      0
dublin  town1   3       12      13      15      11      12      13      140     0
dublin  town2   4       1       2       3       5       1       2       30      80
dublin  town2   5       6       7       8       10      6       7       80      180
dublin  town2   6       11      12      13      15      1       12      130     280

我们得到记录 10 和 11 并分别乘以 *10、*20(a=*10等于a=a*10)。然后我们使用 Output Field Separator "\t",它是一个选项卡。

于 2013-09-13T14:41:30.180 回答