0

文字列Fri May 3 13:50:37 2013は に並べ替える必要がありFri 3 May 2013 13:50:37ます。を使用してこれをどのように達成できsedますか?

4

4 に答える 4

1

正規表現で後方参照を使用し、サブパターンに一致させます。

sed -E 's/^(...) (...) ([0-9]+)(.*)([0-9]{4})$/\1 \3 \2 \5 \4/'
于 2013-05-03T08:50:18.407 に答える
1

dateコマンドが日付処理で機能する場合、私はdateコマンドを支持します。

kent$  date -d"Fri May 3 13:50:37 2013" +"%a%e %b %Y %T"                             │       %M     minute (00..59)
Fri 3 May 2013 13:50:37 
于 2013-05-03T08:31:42.263 に答える
0

これはうまくいくかもしれません(GNU sed):

sed -r 's/(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ([123]?[0-9]) /\2 \1 /g' file
于 2013-05-03T11:02:48.967 に答える