Перетворимо timestamp в нормальний час

Багатьом адміністраторам Active Directory періодично доводиться звертатися до тих чи інших полях облікових об'єктів домену, що містять мітку часу (timestamp). Зазвичай таке завдання виникає, коли потрібно визначити час останнього входу користувача в домен, або останньої реєстрації комп'ютера в Active Directory. Ця інформація міститься в поле  Lastlogontimestamp.

Все б добре, але проблема полягає в тому, що формат часу, в якому зберігається мітка часу - UTC. Тобто замість звичної дати і часу ви побачите щось таке:

129639007827858663

Природно, щоб відразу зрозуміти яка це дата, потрібно володіти певними навичками і феноменальними обчислювальними здібностями головного мозку.

Однак вихід є і для простих системних адміністраторів, особисто я використовую наступні три методики:

1) Можна скористатися оснащенням adsiedit.msc, оновленої в Windows 7, яка автоматично перетворює UTC час в нормальну дату, однак цей час скопіювати не вдасться, тому що при редагуванні воно знову буде в нестравною форматі.

2) Для перетворення значення Lastlogontimestamp в нормальний формат дати, можна скористатися утилітоюw32tm.exe (Ми вже користувалися цією командою, коли говорили про те, як за допомогою w32tm налаштувати синхронізацію із зовнішнім NTP сервером)

Синтаксис її такий:

w32tm / ntte (lastLogon attribute value)

наприклад:

C: \> w32tm / ntte 129639007827858663

поверне:
150045 03: 33: 02.7858663 - 24.10.2011 9:33:02

3) У разі необхідності масового перетворення значень Lastlogontimestamp з формату UTC, можна скористатися Excel. Формула перетворення буде виглядати так

= IF (A1> 0; DATE (1601; 1; 1) + A1 / 600000000/1440; "")

, де A1 - осередок, що містить Timestamp

Мені особисто подобається перетворення Lastlogontimestamp в нормальний час за допомогою Excel, а в поєднанні з методикою добування інформації з Active Directory прямо в Excel, дізнатися час останнього входу в систему всіх користувачів (комп'ютерів) домену стало ще простіше, тим самим можна періодично очищати базу AD від застарілих записів.