Настройка часового пояса в Windows из командной строки и PowerShell

В качестве одного из базовых параметров времени, помимо собственно, времени и даты, во всех компьютерных системах является понятие часового пояса (Time zone). Для корректного отображения времени в системе, часовой пояс должен быть установлен в соответствии с географическим расположением компьютера.

В ОС семейства Windows проще всего изменить часовой пояс непосредственно из графического интерфейса, щелкнув по значку часов в системном трее и выбрав пункт Change date and time settings (Настройка даты и времени). Далее нужно нажать на кнопку Change Time Zone (Изменить часовой пояс), выбрать из списка доступных часовых поясов подходящий и сохранить изменения.

windows10 выбор часового пояса

Совет. Окно настройки времени также можно вызвать командой timedate.cpl.

В Windows 10 окно смены настройки часового пояса перенесено в приложение Параметры (Время и язык -> Дата и время). Вызвать его, можно щелкнув ПКМ по значку с часами и выбрав в меню Настройка времени и даты.

windows10 настройка даты и времени

параметры часового пояса windows 10 в приложении параметрыchasovogo-poyasa

В Windows изменить часовой пояс можно также и из командой строки или консоли PowerShell. Конкретный способ зависит от используемой версии Windows. Рассмотрим возможные варианты.

Указанными способами придется сменить часовой пояс Windows в регионах, которые переходят в другие часовые пояса 26 октября 2014 во время перехода России на зимнее время.

Право на изменение часового пояса

Смена часового пояса по-умолчанию не требует от пользователя наличия административных прав (в отличии от смены времени / даты). Изменить это поведение можно с помощью локальных политики безопасности (Local Security Settingssecpol.msc). Интересующая нас настройка находится в разделе Security Settings -> Local Policy -> User Rights Assignment (Параметры безопасности -> Локальные политики -> Назначение прав пользователя). Политика называется Change the time zone (Изменение часового пояса). Как вы видите, на данный момент изменить часовой пояс на компьютере может сама система, администраторы и все рядовые пользователи. Чтобы запретить обычным пользователям самим менять часовой пояс, необходимо в этой политике удалить Users из списка учетных записей.

Изменение часового пояса - политика

Смена часового пояса в Windows 10, 8.1 и 7– утилита TZUtil

Для смены часового пояса в ОС Windows 10 / 8.1 / 7, Windows Server 2016/ 2012 R2/ 2008  R2 используется специальная утилита командной строки  tzutil.exe (Windows Time Zone Utility), впервые появившаяся в Windows 7 (на Vista/ Server 2008 устанавливается в виде отдельного обновления KB 2556308). Исполняемый файл утилиты хранится в каталоге %WINDIR%\System32.

Разберемся с возможностями и особенностями использования утилиты TZUtil.

Итак, запустите командную строку (cmd.exe). Чтобы узнать текущий часовой пояс и его идентификатор (TimeZoneID), выполните команду:

tzutil /g

В данном примере Russian Standard Time это идентификатор текущего часового пояса:

tzutil /g узнать текущий часовой пояс компьютера

Выведем список всех часовых поясов с их названием и идентификаторами так:

tzutil /l

tzutil /l список всех часовых поясов

Dateline Standard Time
UTC-11
Aleutian Standard Time
Hawaiian Standard Time
Marquesas Standard Time
Alaskan Standard Time
UTC-09
UTC-08
Pacific Standard Time (Mexico)
Pacific Standard Time
US Mountain Standard Time
Mountain Standard Time
Mountain Standard Time (Mexico)
Central Standard Time (Mexico)
Canada Central Standard Time
Central America Standard Time
Central Standard Time
Easter Island Standard Time
SA Pacific Standard Time
Eastern Standard Time
Cuba Standard Time
Haiti Standard Time
US Eastern Standard Time
Turks And Caicos Standard Time
Eastern Standard Time (Mexico)
Paraguay Standard Time
Atlantic Standard Time
SA Western Standard Time
Venezuela Standard Time
Central Brazilian Standard Time
Pacific SA Standard Time
Newfoundland Standard Time
Tocantins Standard Time
E. South America Standard Time
Argentina Standard Time
Greenland Standard Time
SA Eastern Standard Time
Montevideo Standard Time
Magallanes Standard Time
Bahia Standard Time
Saint Pierre Standard Time
UTC-02
Mid-Atlantic Standard Time
Azores Standard Time
Cape Verde Standard Time
UTC
GMT Standard Time
Morocco Standard Time
Greenwich Standard Time
W. Europe Standard Time
Central Europe Standard Time
Romance Standard Time
Central European Standard Time
W. Central Africa Standard Time
Sao Tome Standard Time
Jordan Standard Time
GTB Standard Time
Middle East Standard Time
FLE Standard Time
Namibia Standard Time
Syria Standard Time
Israel Standard Time
Egypt Standard Time
Kaliningrad Standard Time
E. Europe Standard Time
West Bank Standard Time
Libya Standard Time
South Africa Standard Time
Sudan Standard Time
Arabic Standard Time
Arab Standard Time
Belarus Standard Time
Russian Standard Time
E. Africa Standard Time
Turkey Standard Time
Iran Standard Time
Arabian Standard Time
Astrakhan Standard Time
Azerbaijan Standard Time
Caucasus Standard Time
Russia Time Zone 3
Mauritius Standard Time
Saratov Standard Time
Georgian Standard Time
Afghanistan Standard Time
West Asia Standard Time
Ekaterinburg Standard Time
Pakistan Standard Time
India Standard Time
Sri Lanka Standard Time
Nepal Standard Time
Central Asia Standard Time
Bangladesh Standard Time
Omsk Standard Time
Myanmar Standard Time
SE Asia Standard Time
Altai Standard Time
North Asia Standard Time
N. Central Asia Standard Time
Tomsk Standard Time
W. Mongolia Standard Time
China Standard Time
North Asia East Standard Time
Singapore Standard Time
W. Australia Standard Time
Taipei Standard Time
Ulaanbaatar Standard Time
North Korea Standard Time
Aus Central W. Standard Time
Tokyo Standard Time
Korea Standard Time
Transbaikal Standard Time
Yakutsk Standard Time
Cen. Australia Standard Time
AUS Central Standard Time
E. Australia Standard Time
Vladivostok Standard Time
West Pacific Standard Time
AUS Eastern Standard Time
Tasmania Standard Time
Lord Howe Standard Time
Magadan Standard Time
Bougainville Standard Time
Norfolk Standard Time
Sakhalin Standard Time
Central Pacific Standard Time
Russia Time Zone 10
Russia Time Zone 11
New Zealand Standard Time
UTC+12
Kamchatka Standard Time
Fiji Standard Time
Chatham Islands Standard Time
UTC+13
Tonga Standard Time
Samoa Standard Time
Line Islands Standard Time

Если вы хотите быстро найти вывести все доступные часовые пояса, например, со сдвигом UTC +2, выполните команду:

tzutil /l | find /I "utc+02"

поиск временных зон по UTC смещению

Изменим текущий часовой пояс (UTC+03:00) Москва, Санкт-Петербург, Волгоград – (Russian Standard Time) на (UTC+04:00) Ижевск, Самара (Russia Time Zone 3). Для этого нужно указать идентификатор часового пояса.

tzutil /s "Russia Time Zone 3"

tzutil /s задать часовой пояс Russia Time Zone

Проверим, что пояс сменился другим способом:

reg query HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

настройки часового пояса в реестре

Чтобы отключить переход на летнее время для конкретного пояса, нужно указать идентификатор часового пояса с суффиксом _dstoff, например

tzutil /s “Pacific Standard Time_dstoff”

После выполнения данной команды вы измените часовой пояс компьютер и отключите сезонный перевод часов.

Также вы можете вывести информацию о часовом поясе и настройках сезонного перевод часов так:

w32tm /tz

Часовой пояс: Текущий:TIME_ZONE_ID_UNKNOWN Сдвиг: -180мин (UTC=LocalTime+Bias)
[Зимнее время:"RTZ 2 (зима)" Сдвиг:0мин Дата:(не указано)]
[Летнее время:"RTZ 2 (лето)" Сдвиг:-60мин Дата:(не указано)]

w32tm /tz

Управление часовым поясом из консоли PowerShell

Получить настройки текущего часового пояса можно и из консоли PowerShell, выполните команду

[TimeZoneInfo]::Local

Или

Get-TimeZone

Id                         : Ekaterinburg Standard Time
DisplayName                : (UTC+05:00) Екатеринбург
StandardName               : RTZ 4 (зима)
DaylightName               : RTZ 4 (лето)
BaseUtcOffset              : 05:00:00
SupportsDaylightSavingTime : True

powershell Get-TimeZone

Чтобы посмотреть все возможные часовые пояса, доступные в Windows можно использовать команду Powershell:

[System.TimeZoneInfo]::GetSystemTimeZones()
Или
Get-TimeZone -ListAvailable

Get-TimeZone -ListAvailable

Для смены часового пояса из PowerShell, выполните команду:

Set-TimeZone -Name "Astrakhan Standard Time"

Автоматизация смены часового пояса с помощью Powershell

Рассмотрим универсальный Powershell скрипт, который позволяет изменить часовой пояс на любом компьютере (скрипт предполагает, что в вашей сети до сих пор присутствуют компьютеры с Windows XP / Windows Server 2003). Этот скрипт можно назначить через групповые политики на все компьютеры домена / определенные организационные контейнеры (OU). Скрипт определяет версию ОС и, если это Windows Vista или выше, для смены часового пояса используется команда tzutil.exe, в противном случае – используется вариант смены пояса через RunDLL32.exe для Windows XP.

$tmZone = "Russian Standard Time"
$WinOSVerReg = Get-Item "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion"
$WinOSVer = $WinOSVerReg.GetValue("CurrentVersion")
if ($WinOSVer -GE 6){
tzutil.exe /s $tmZone
} Else {
$param = "/c Start `"Change tmZone`" /MIN %WINDIR%\System32\Control.exe TIMEDATE.CPL,,/Z "
$param += $tmZone
$proc = [System.Diagnostics.Process]::Start( "CMD.exe", $param )
}

Смена часового пояса в Windows XP из командной строки

Примечание. Еще раз напоминаем, что на данный момент времени поддержка Windows XP прекращена, поэтому настоятельно рекомендуем перейти на более современную версию ОС.

В Windows информация о значении текущей часовой зоны хранится в ветке реестра

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

В нашем случае, например, видно, что в данный момент используется часовая зона —  Ekaterinburg Standard Time.

Эту же информацию можно получить таким запросом:

reg query HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

reg query : получить значение текущей часовой зоны Список доступных часовых поясов в Windows XP / Windows Server 2003 хранится в ветке реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones. windows xp - список доступных часовых поясов

Чтобы изменить текущий часовой пояс на московский (GMT+03:00 -Moscow, St. Petersburg, Volgograd), воспользуемся командой:

RunDLL32.exe shell32.dll,Control_RunDLL timedate.cpl,,/Z Russian Standard Time

Либо:

Control.exe TIMEDATE.CPL,,/Z Russian Standard Time

Проверим, что часовой пояс сменился:

reg query HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

Изменить часовой пояс из командной строки в Windows XP


Предыдущая статья Следующая статья


Комментариев: 7 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)