2016-09-07 1 views
0

Я работаю с powershell, которая извлекает информацию о расписании из биометрического устройства. Одним из аргументов поиска, используемых для запроса расписания, является дата и время. В настоящее время я получаю дату и время на локальном компьютере, где установлена ​​моя PowerShell. Мой код в моем Powershell скрипт для получения даты:Powershell получить текущее время для Asia/Manila

get-date -format yyyy-MM-dd 

Однако, если кто-то меняет дату и время компьютера, мой запрос затронут. Есть ли способ получить текущую дату для Азии/Манилы с помощью powershell? Я больше не хочу использовать местное машинное время.

ответ

1

Вы можете преобразовать дату в универсальное время перед форматированием как строка:

(Get-Date).ToUniversalTime().ToString('yyyy-MM-dd') 
+0

Я рассматриваю также, если батарея CMOS на локальной машине не работает хорошо, его перезапускает дату до момента, когда локальная машина была впервые изготовлена. Будет ли это работать? будет ли он по-прежнему получать текущую дату и время для Азии/Манилы? Я рассматриваю все последствия для этой ситуации. – Joey

+0

После того, как локальная машина включена и в сети, она должна получить свое время от поставщика NTP и соответствующим образом обновить. – alroc

+0

Батарея CMOS сохраняет время, пока машина выключена, но в противном случае выходит за рамки. Критической частью является то, что Windows знает часовой пояс и текущее время в точке, в которой выполняется команда (имеет ли она это, потому что она запомнила или вытащила ее из NTP, или кто-то вручную ее установил). –

Смежные вопросы