我有一個包含10列和大量行的文件。我想添加修正修正到第10列,其行包含'G01'模式。如何使用awk和grep組合
例如,下面
AS G17 2014 3 31 0 2 0.000000 1 -0.809159910000E-04
AS G12 2014 3 31 0 2 0.000000 1 0.195515363000E-03
AS G15 2014 3 31 0 2 0.000000 1 -0.171167837000E-03
AS G29 2014 3 31 0 2 0.000000 1 0.521982134000E-03
AS G07 2014 3 31 0 2 0.000000 1 0.329889640000E-03
AS G05 2014 3 31 0 2 0.000000 1 -0.381588767000E-03
AS G25 2014 3 31 0 2 0.000000 1 0.203352860000E-04
AS G01 2014 3 31 0 2 0.000000 1 0.650180300000E-05
AS G24 2014 3 31 0 2 0.000000 1 -0.258444780000E-04
AS G27 2014 3 31 0 2 0.000000 1 -0.203691700000E-04
與G01的行的第十列中的文件中應予以糾正。 我已經使用'awk'和'while'循環來做到這一點,但是對於大量文件來說需要很長時間。 如果有人能提供更有效的幫助,我們將不勝感激。
'的awk '/ G01/{$ 10 = NEW_VALUE} 1' file'會做你想要什麼 – hek2mgl
你永遠需要的grep,當你使用awk,因爲awk可以做grep可以做的任何有用的事情,並且沒有理由使用'while'循環(awk內部或外部)來做你想做的事情。 –
如果您希望添加的*「更正」*爲100,您可以使用'awk'/ G01/{$ 10 + = 100} 1'yourFile' –