2017-05-11 9 views
-1

Da ich dies über eine Datei tun möchte, deren Zeilen mit Millisekunden für Zeitreihen beginnen, war ich auf der Suche nach einem guten Regex, der z. B. für Änderungen in einer Datei oder nur aus einer Bash-Shell verwendet werden kann. Optionen mit sed, awk oder mit nur bash und printf würde helfen. Irgendwelche Ideen?Regex von epoch Millisekunden in ISO8601-Format zu konvertieren?

TIA.

+1

Dies ist kein Job für einen regulären Ausdruck. Dies ist ein Programmierauftrag. – AdrianHHH

Antwort

0

Dies ist kein Job für Npp + regex, hier ist ein Perl-Skript, ein Liner, der die Arbeit macht:

Eingabedatei:

cat file.txt 
123456789blah blah 
1111111111456 blue blue 
1212121212789 foo bar 

Skript:

perl -MPOSIX -pnE 's/(\d+)\d{3}/POSIX::strftime("%Y.%m.%d %H:%M:%S",localtime $1)/e' file.txt 

Ausgabe:

2009.02.14 00:31:30 blah blah 
2005.03.18 02:58:31 blue blue 
2008.05.30 06:20:12 foo bar 
+0

Ich aktualisierte die Frage, um mehr Kommandozeile/Shell konzentriert zu sein. – ZeroGraviti

Verwandte Themen