2017-04-25 60 views
0

我想用以前的非无关值替换csv的无关数据值(任何值> 100,000)。使用awk根据以前的值修改CSV的值

Input 
    1/1/2017 01:00 56242 
    1/1/2017 02:00 51214 
    1/1/2017 03:00 101442 
    1/1/2017 04:00 44242 
    1/1/2017 05:00 990919 
    1/1/2017 06:00 221512 
    1/1/2017 07:00 52100 

    Expected Output 
    1/1/2017 01:00 56242 
    1/1/2017 02:00 51214 
    1/1/2017 03:00 51214 
    1/1/2017 04:00 44242 
    1/1/2017 05:00 44242 
    1/1/2017 06:00 44242 
    1/1/2017 07:00 52100 

这可以使用awk在bash脚本中完成吗?

喜欢的东西:

awk 'BEGIN{FS=OFS=" "} NF{print $1, $2, ($3 >=100000 "not sure") output.csv 

任何帮助,将不胜感激 - 我不是很熟悉的awk。

回答

1

awk来救援!

awk '{if($NF>100000) $NF=p; else p=$NF}1' file 
+0

啊,p是我失踪的!非常感谢。 –

+0

@TylerA记住[当某人回答我的问题时该怎么办?](http://stackoverflow.com/help/someone-answers) – fedorqui