$ date Fri Nov 25 16:44:07 SGT 2016 $ date -j -f "%Y-%m-%dT%H:%M:%S" "2016-11-12T01:46:00.000000Z" +%Y%m%d%H%M Warning: Ignoring 8 extraneous characters in date string (.000000Z) 201611120146
Sono in +8 ore, quindi quando analizzo la string UTC con .000000Z, voglio che il tempo risultante sia 201611120946
, non 201611120146
.
Ho provato.% Z ma questo non funzionava, quindi sono poco bloccato come get questa data analizzare il lavoro.
Sì, è ansible in dateutils :
$ dateconv 2016-11-12T01:46:00.000000Z --zone Asia/Singapore -f '%Y%m%d%H%M' 201611120946
Se l'offset non è conosciuto per nome, ma preferisci 8 ore (o qualsiasi altro intervallo di tempo) aggiunto a un timbro UTC, puoi utilizzare dateadd
$ dateadd 2016-11-12T01:46:00.000000Z +8h -f '%Y%m%d%H%M' 201611120946