Как редактировать метки времени с помощью Windows PowerShell

В следующем руководстве показано, как редактировать временные метки файлов — создание, последний доступ и последняя запись — с помощью Windows PowerShell.

PowerShell является частью любой современной версии операционной системы Microsoft Windows. Microsoft перешла на PowerShell от командной строки в Windows 10, но не удалила командную строку при этом.

Пользователи и администраторы Windows 10 имеют доступ к обоим, но основное внимание в разработке явно уделяется PowerShell.

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

Как редактировать метки времени с помощью Windows PowerShell

метка времени изменения powershell

Первое, что вам нужно сделать, это запустить окно PowerShell. Нажмите на клавишу Windows, введите PowerShell и затем нажмите клавишу Enter. Обратите внимание, что это запускает запрос под текущей учетной записью пользователя. Если вам требуется запрос с повышенными правами, например, для редактирования временных меток файлов для папок, к которым пользователь имеет ограниченный доступ, дополнительно удерживайте нажатыми клавиши Shift и Ctrl.

Вам потребуются три команды:

  • $ (Get-Item FILENAME.EXT) .creationtime = $ (ДАТА)
  • $ (Get-Item FILENAME.EXT) .lastaccesstime = $ (ДАТА)
  • $ (Get-Item FILENAME.EXT) .lastwritetime = $ (ДАТА)

Эти три команды изменяют временные метки создания, последнего доступа и последней записи файла при их запуске.

Заметка : Время последнего доступа не включено по умолчанию во всех поддерживаемых версиях Windows из-за проблем с производительностью.

Чтобы дать вам несколько примеров:

  • $ (Get-Item test.txt) .creationtime = $ (Get-Date)
  • $ (Get-Item test.txt) .lastaccesstime = $ (Get-Date «24/12/2011 07:15»)

Первая команда устанавливает метку времени создания файла text.txt на текущие дату и время. Вторая команда изменяет время и дату последнего доступа на 24 декабря 2011 г. в 7:15.

Обратите внимание, что команда требует, чтобы файл находился в текущем каталоге командной строки PowerShell.

Полезные команды

Однажды может оказаться полезным перечислить временные метки файлов в текущей папке до и после запуска команды PowerShell. Это упрощает поиск файлов, которые все еще требуют изменения, и проверку правильности применения изменений.

Get-ChildItem -force | Режим выбора объекта, имя, CreationTime, LastAccessTime, LastWriteTime | футов

отметки времени списка powershell

Команда выводит список всех файлов и папок по текущему пути и отображает время создания, время последнего доступа и время последней записи каждого элемента в таблице.

  • -force в этом контексте включает в вывод скрытые и системные файлы.
  • ft — сокращение от format table.

Если вам просто нужна метка времени создания, запустите 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 вместо.

Добавить комментарий

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