Як редагувати часові позначки за допомогою Windows PowerShell

Наступний посібник демонструє, як можна редагувати часові позначки файлів - створювати, останній доступ і останнє записування - за допомогою Windows PowerShell.

PowerShell є частиною будь-якої сучасної версії операційної системи Windows Microsoft. Microsoft перейшла до PowerShell подалі від командного рядка в Windows 10, але не видалила командний рядок, зробивши це.

Користувачі та адміністратори Windows 10 мають доступ до обох, але розробка акцентується чітко на PowerShell.

Кожен файл у Windows та інших операційних системах також має декілька часових позначок. Файлова система відстежує час створення файлів, час останнього доступу та час останнього запису.

Як редагувати часові позначки за допомогою Windows PowerShell

Перше, що вам потрібно зробити, це запустити вікно PowerShell. Торкніться клавіші Windows, наберіть PowerShell і натисніть клавішу Enter. Зауважте, що це запускає запит під поточним обліковим записом користувача. Якщо вам потрібно підвищене запит, наприклад, для редагування часових міток файлів папок, до яких користувач має обмежений доступ, додатково утримуйте клавішу Shift та Ctrl.

Три потрібні вам команди є такими:

  • $ (Get-Item FILENAME.EXT) .creationtime = $ (DATE)
  • $ (Get-Item FILENAME.EXT) .lastaccesstime = $ (DATE)
  • $ (Get-Item FILENAME.EXT) .lastwritetime = $ (DATE)

Три команди змінюють часові позначки створення, останнього доступу та останнього запису файлу під час їх запуску.

Примітка : Час останнього доступу не включено за замовчуванням для всіх підтримуваних версій Windows через проблеми з роботою.

Щоб навести кілька прикладів:

  • $ (Get-Item test.txt) .creationtime = $ (Дата отримання)
  • $ (Get-Item test.txt) .lastaccesstime = $ (Дата отримання "24.12.2011 07:15")

Перша команда встановлює часову позначку створення файлу text.txt до поточної дати та часу. Друга команда змінює останній час і дату доступу на 24 грудня 2011 року о 7:15 ранку.

Зауважте, що команда вимагає, щоб файл знаходився в поточному каталозі запиту PowerShell.

Корисні команди

Один раз, що може стати в нагоді - перерахувати часові позначки файлів поточної папки до і після запуску команди PowerShell. Це полегшує пошук файлів, які все ще потребують змін, і перевірити, чи були застосовані зміни правильно.

Get-ChildItem -force | Режим вибору-об'єкта, ім'я, час створення, LastAccessTime, LastWriteTime | фут

Команда перераховує всі файли та папки поточного шляху та відображає час створення, останній час доступу та час останнього запису кожного елемента в таблиці.

  • -force в цьому контексті включає приховані і системні файли у висновку.
  • ft - короткий формат таблиці.

Якщо вам просто потрібна позначка часу створення, замість цього запустіть Get-ChildItem -force .

Наступний сценарій виконує операцію над усіма файлами.

$ modifyfiles = Get-ChildItem -force | Де-об’єкт {! $ _. PSIsContainer}

foreach ($ об'єкт у $ modifyfiles)

{

$ object.CreationTime = ("11.11.2011 12:00:00")

$ object.LastAccessTime = ("11.11.2011 12:00:00")

$ object.LastWritetime = ("11.11.2011 12:00:00")

}

Просто скопіюйте та вставте його та змініть відповідно до своїх вимог.

Порада: Якщо ви віддаєте перевагу графічний інтерфейс користувача, коли мова йде про зміну часових позначок, перегляньте натомість безкоштовну програму Attribute Changer.