Как преобразовать дату-время RFC 3339 в IST? - PullRequest
0 голосов
/ 17 июня 2019

Я работал с API остальных устройств Google, чтобы вывести список файлов моего устройства Google. Я загружал метаданные файла ниже на моем диске. В этом я получаю «Созданное время» в формате RFC 3339. Можете ли вы помочь мне преобразовать время, возвращаемое API остальных устройств Google, в IST? Есть ли способ сделать это на платформе Linux?

{
 "files": [
  {
   "id": "1y_GB6OCBENf_gDMAzAHdN",
   "name": "testfile.jpg",
   "webViewLink": "https://drive.google.com/file/d/1y_GB6OCBENf_gDMAzAHdN/view?usp=drivesdk",
   "createdTime": "2019-06-17T02:08:50.959Z"
   }
  ]
}

Примечание. Я использовал инструмент curl для доступа к API-интерфейсам остальных устройств Google с моего сервера Linux.

Ответы [ 2 ]

1 голос
/ 17 июня 2019

Я понимаю, что вы хотите получить дату создания ваших файлов, преобразовать ее в IST и использовать в своем коде, но исправьте меня, если я ошибаюсь.Вы можете сделать это так:

#!/bin/bash

your_date="2019-06-17T02:08:50.959Z"

#Remove the Z from the date
formatZ="${your_date//Z}"

#Replace the T with a space
formatT=$(echo $formatZ | tr T " ") 

#Use the command date to convert the date we formatted
newdate=$(TZ=IST date -d "$formatT UTC-5:30")

echo $newdate
0 голосов
/ 17 июня 2019

Вы можете использовать команду date для анализа ISO 8601 / RFC 3339 отметки времени , а затем снова использовать команду date для преобразования ее в другой часовой пояс .

...