如何使用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
答案 0 :(得分: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
)。然后我们使用输出字段分隔符"\t"
,这是一个标签。