Ho un file di testo (più correttamente, uno “ stile tedesco “ file CSV, cioè virgola decimale separata da punto e virgola) che ha una data e il valore di una misura su ciascuna linea.
Ci sono tratti di valori errati che voglio rimuovere prima di ulteriori interventi. Mi piacerebbe archiviare questi tagli in alcuni script in modo che le mie correzioni siano documentate e se possibile rieseguo tali correzioni.Rimuovere le righe tra determinati modelli da un file (utilizzando gli strumenti Unix)
Le linee simile a questa:
28.01.2005 14:48:38;5,166
28.01.2005 14:50:38;2,916
28.01.2005 14:52:38;0,000
28.01.2005 14:54:38;0,000
(long stretch of values that should be removed; could also be something else beside 0)
01.02.2005 00:11:43;0,000
01.02.2005 00:13:43;1,333
01.02.2005 00:15:43;3,250
Ora mi piacerebbe memorizzare un elenco di iniziare e di fine modelli come 28.01.2005 14:52:38
+ 01.02.2005 00:11:43
, e lo script avrebbe tagliato le linee corrispondenti a questi iniziano coppie/fine e tutto ciò che c'è tra di loro.
Sto pensando di hackerare uno script awk, ma forse mi manca uno strumento già esistente.
(linee di stampa nessuna corrispondenza)
Ottimo! Sapevo che mi mancava qualcosa e hellip; Ho sempre usato sed con modelli singoli e non ho mai ricordato che offre gamme. –
Inoltre, posso inserire le espressioni in un file, dove posso anche usare commenti (con '#'). La riga di comando è quindi "file-script script sed -f". –