2017-04-25 1 views
0

Ich möchte irrelevante Datenwerte (beliebiger Wert> 100.000) eines CSV mit dem vorherigen nicht-externen Wert ersetzen.Ändern Sie die Werte einer CSV basierend auf vorherigen Werten mit Hilfe von awk

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 

Kann dies mit awk in einem Bash-Skript getan werden?

Etwas wie:

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

Jede mögliche Hilfe würde geschätzt - ich mit awk nicht sehr vertraut bin.

Antwort

1

awk zur Rettung!

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

Ah, p ist was ich fehlte! Ich danke dir sehr. –

+0

@TylerA erinnern [Was soll ich tun, wenn jemand meine Frage beantwortet?] (Http://stackoverflow.com/help/someone-answers) – fedorqui

Verwandte Themen