Дата на второй строке файла выглядит следующим образомДата преобразования не работает
12-24-11 13:37 (MM-YY-YY MM:SS)
Я хочу, чтобы преобразовать его в
Sat Dec 24 13:37:00 CET 2011
секунд всегда должен быть 00
.
Я делаю это с помощью этого кода
date="$(sed -n 2p $file)"
date="$(echo $date | sed 's#^\([0-9\-]\{5\}\)-\([0-9]\{2\}\)#\2-\1#')"
date="$(date -d $date)"
Но неизвестных причин мне это не работает ... Есть идеи?
Я всегда получаю ошибку:
date: the argument '13:37' lacks a leading '+';
When using an option to specify date(s), any non-option
argument must be a format string beginning with '+'.
Но когда я делаю это вручную из командной строки, то она работает с пространствами ... $ date -d '11 -12-24 13:37 ' –
Точно, вы используете '' ', чтобы избежать их. –
И как мне изменить код? date = "$ (date -d \ '$ date \), очевидно, не является решением вообще: D –