将MM-DD-YY MM:SS转换为YY-MM-DD MM:SS

时间:2011-12-24 12:45:03

标签: shell unix date

我想转换像

这样的日期
12-24-11 13:37

(MM-DD-YY MM:SS)到

11-12-24 13:37

(YY-MM-DD MM:SS)

无论如何都要这样做?

3 个答案:

答案 0 :(得分:1)

救援:

$ echo 12-24-11 13:37 | sed 's#^\([0-9\-]\{5\}\)-\([0-9]\{2\}\)#\2-\1#'
11-12-24 13:37

答案 1 :(得分:1)

不需要sed。

#!/bin/sh

input="12-24-11 13:37";

month="${input%%-*}";
input="${input#*-}";

day="${input%%-*}";
input="${input#*-}";

year="${input%% *}";
input="${input#* }";

echo "$year-$month-$day $input";

但如果您确实想使用外部工具,也可以使用 short 正则表达式

echo 12-24-11 13:37 | perl -pe 's/(.+)-(.+) /$2-$1 /'

答案 2 :(得分:0)