Преобразование формата даты в эпоху с использованием gawk ( awk)
Я хочу конвертировать даты в файле в эпоху времени. Пример CSV выглядит следующим образом:
$ cat test.jtl
2016/09/19 00:31:17.080,238,test1
2016/09/19 00:31:17.154,322,test2
22-Sep-2014 10:32:35.012,222,test3
Я пробовал следующее, но результат просто получает текущую дату
cat test.jtl | gawk 'BEGIN{FS=OFS=","} {command="date -d \"$1\" +'%s%3N'";command | getline $1;close(command);print}'
Но это возвращает только текущую дату в эпоху. Я думаю, что $1 (первый столбец данных, который является датой) не передается должным образом. Но не уверен, в чем проблема.
1 ответ
Цитирование задания command
останавливает расширение $1
,
cat test.jtl | gawk 'BEGIN{FS=OFS=","} {command="date -d \""$1"\" +'%s%3N'";command |getline;close(command);print}'
работает для меня