Изменить время создания файла powershell

Обновлено: 04.07.2024

Changes the system time on the computer to a time that you specify.

Syntax

Description

The Set-Date cmdlet changes the system date and time on the computer to a date and time that you specify. You can specify a new date and/or time by typing a string or by passing a DateTime or TimeSpan object to Set-Date . To specify a new date or time, use the Date parameter. To specify a change interval, use the Adjust parameter.

Examples

Example 1: Add three days to the system date

This command adds three days to the current system date. It does not affect the time. The command uses the Date parameter to specify the date.

The Get-Date cmdlet returns the current date as a DateTime object. The DateTime object's AddDays method adds a specified number of days (3) to the current DateTime object.

Example 2: Set the system clock back 10 minutes

This example sets the current system time back by 10 minutes.

The Adjust parameter allows you to specify an interval of change (minus ten minutes) in the standard time format for the locale.

The DisplayHint parameter tells PowerShell to display only the time, but it does not affect the DateTime object that Set-Date returns.

Example 3: Set the date and time to a variable value

These commands change the system date and time on local computer to the date and time saved in the variable $T . The first command gets the date and stores it in $T .

The second command uses the Date parameter to pass the DateTime object in $T to the Set-Date cmdlet.

Example 4: Add 90 minutes to the system clock

These commands advance the system time on the local computer by 90 minutes.

The first command uses the New-TimeSpan cmdlet to create a TimeSpan object with a 90-minute interval, and saves it in the $90mins variable.

The second command uses the Adjust parameter of Set-Date to adjust the date by the value of the TimeSpan object in the $90mins variable.

Parameters

Specifies the value for which this cmdlet adds or subtracts from the current date and time. can type an adjustment in standard date and time format for your locale or use the Adjust parameter to pass a TimeSpan object from New-TimeSpan to Set-Date .

Type:TimeSpan
Position:0
Default value:None
Accept pipeline input:True
Accept wildcard characters:False

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False

Changes the date and time to the specified values. You can type a new date in the short date format and a time in the standard time format for your locale. Or, you can pass a DateTime object from Get-Date .

If you specify a date, but not a time, Set-Date changes the time to midnight on the specified date. If you specify only a time, it does not change the date.

Type:DateTime
Position:0
Default value:None
Accept pipeline input:True
Accept wildcard characters:False

  • Date - displays only the date.
  • Time - displays only the time.
  • DateTime - displays the date and time.

This parameter affects only the display. It does not affect the DateTime object that Get-Date retrieves.

Type:DisplayHintType
Accepted values:Date, Time, DateTime
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False

Inputs

You can pipe a date to Set-Date .

Outputs

Set-Date returns an object that represents the date that it set.

Notes

Use this cmdlet cautiously when changing the date and time on the computer. The change might prevent the computer from receiving system-wide events and updates that are triggered by a date or time. Use the WhatIf and Confirm parameters to avoid errors.

Читатель Алексей озадачил меня в почте проблемой бюджетных автомобильных FM-трансмиттеров. Цитирую его задачу с незначительными правками и моим скриншотом для иллюстрации.

Задача

PowerShell дата создания файла

Вы, как опытный пользователь каталогов и библиотек, можете ли подсказать как в Windows 7 восстановить правильную сортировку, а именно: взять порядок нумерации файлов по имени, и по нему создать признак по дате?

Решение

Алексей ожидал от меня решения в плоскости проводника Windows, но я прямо с телефона написал такой ванлайнер PowerShell:

  • Get-ChildItem (dir) получает список файлов в папке и передает его по конвейеру.
  • Sort-Object (sort) сортирует список по имени файла и передает дальше.
  • Foreach-Object (%) устанавливает для каждого объекта ($_.) свойство LastWriteTime (дата изменения) равное текущей дате, которую выдает командлет Get-Date.

Если нужно изменять дату создания, используется свойство CreationTime.

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

PowerShell дата создания файла

Поскольку у файлов одинаковая дата изменения, трудно сказать, как поведет себя устройство воспроизведения. Не исключено, что оно будет проигрывать файлы в обратном порядке, начиная с наибольшего номера.

Можно немного допилить скрипт, чтобы даты изменения файлов отличались. Для этого надо добавить для командлета Foreach-Object в начале блок со счетчиком и изменить вывод даты на (Get-Date).AddSeconds($i)

Теперь для каждого файла задается дата изменения, которая равна текущей дате плюс i секунд, где i – порядковый номер файла в списке. Можно добавлять минуты, часы, дни и т.д.

Для наглядности результат с шагом в одну минуту с помощью AddMinutes($i) .

PowerShell дата создания файла

Алексей ответил, что он не программист, а электронщик, и не знает с чем едят PowerShell и куда пихать скрипты. А получив дополнительную порцию объяснений, он, к сожалению, так и не сообщил, сумел ли применить это решение. Однако я все равно решил его опубликовать, потому что оно может пригодиться чуть более пытливым читателям :)

Метки: PowerShell, скрипты Информация в статье применима к Windows 7 и новее

Вадим - владелец этого блога, и почти все записи здесь вышли из-под его пера. Подробности о блоге и авторе здесь. Поддержать автора вы можете тут.

Вас также может заинтересовать:

Подпишитесь на канал и читайте интересные записи чаще! Есть вопросы? Задайте их в чате.

комментариев 17

Действительно красиво. Читать. C пользоваться, не все так очевидно. Особенно пользоваться регулярно. Нужна интеграция в GUI. А еще лучше, срабатывание по событию. Например по факту размонтирования флешки.

Ваша оценка: 0 Ваша оценка: +2

Согласен. Просто вижу ошибку не в решении задачи, а в постановке. Не что нужно делать, а что нужно Сделать один раз, чтобы всегда слушать по порядку. Подзадача решена. Теперь надо решить задачу.

Ваша оценка: 0 Ваша оценка: 0

Алексей, конечно, свинтус. Не понимаю таких людей.

Ваша оценка: +1

Зачёт! Но вот у меня тоже были сомнения в поведении устройства при одинаковой дате.

Ваша оценка: +1

Есть устойчивое подозрение, что в этом случае очерёдность будет браться из FAT.

Ваша оценка: 0

Вадим, у меня задача была mp3 присвоить уникальные номера, чтобы потом можно было проиграть композицию по номеру, а не по названию, файлы названы как попало. Помню сидел на парковке в Севастополе в машине и писал скрипт на нетбуке, чтобы перед поездкой домой, в Новороссийск можно было музыку нормально слушать :-)

Ваша оценка: 0 Ваша оценка: 0

Или она всегда хотела только 215? :)

Ваша оценка: 0 Ваша оценка: 0

Уже ответил. Настроить систему так, чтобы больше об этом вопросе не вспоминать.
Как? Слишком общий вопрос. Телепатия не настолько развита. Если настройки самбы (а они там есть) или винды (скорее всего тоже есть) не позволяют решить c датами, попробовать доступ по ftp (благо с ним в можно работать прямо из проводника и закреплять в быстрый доступ), webDAV или что там еще поддерживает сервер. Если и это не помогло, что вряд ли, думать об автоматизации запуска переименования. А может наоборот, вначале автомтизация, а потом остальное. А может еще какие варианты существуют. Повторю, я не телепат.

Ваша оценка: 0 Ваша оценка: 0

Супер! просто и элегантно. давно искал что-то подобное. редактирую свои сборники в TagScanner, записываю на флешку и использую Ваш скрипт с AddMinutes($i). моя автомагнитола стала воспроизводить все по порядку. спасибо!

Ваша оценка: 0

Рад, что помогло! Я когда-то очень давно сам сталкивался с подобным, но как решал не помню. PowerShell я тогда не владел, так что, наверное, в Total Commander.

Ваша оценка: +1

Дата изменения будет одинаковой не для всех файлов:

Ваша оценка: +1

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

BulkFileChanger

Пожалуй, самый простой и удобный способ изменения даты создания файла – это использование программы BulkFileChanger от Nirsoft.

BulkFileChanger (официальный сайт) – это небольшая программа, которая позволяет создавать список файлов, а затем выполнять с ними определенные действия. Например, таким образом можно изменять время их создания, изменения, доступа, а также изменять некоторые атрибуты файлов (атрибут только для чтения, скрытый, системный). Утилита BulkFileChanger работает в любой версии Windows, начиная с Windows 2000 и до Windows 10, при этом поддерживаются как 32-разрядные, так и 64-разрядные операционные системы.

Программа BulkFileChanger полностью бесплатна и доступна для скачивания на официальном сайте разработчика. Она не требует установки и поставляется сразу в виде готового к работе Exe.

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

перенос файлов в BulkFileChanger

После этого нужно выделить файлы в BulkFileChanger и нажать на кнопку с иконкой часов, которая находится на панели инструментов программы.

кнопка с иконкой часов

В результате откроется окно для управления датами и атрибутами файла. В самом верху данного окна будет доступен блок управления временем. Здесь можно изменить дату создания ( Created ), изменения ( Modified ), а также доступа к файлу ( Accessed ). Для изменения этих данных необходимо установить соответствующие флажки, указать нужные значения и нажать на кнопку « Do it ».

блок управления временем

Например, для того чтобы изменить дату создания файла нужно установить два флажка в строке « Created », напротив даты и времени создания. После чего нужно установить необходимое значение и применить изменения нажатием на кнопку « Do it ».

изменить дату создания файла

После этого можно вернуться в проводник Windows и нажать на клавишу F5 для обновления данных о файлах. Если все было сделано правильно, то дата создания фала должна измениться.

дата в проводнике Windows

Также отметим, что у Nirsoft есть консольная программа NirCmd (ссылка), которую также можно использовать для изменения даты создания файла. Для этого нужно просто запустить программу « nircmd.exe » с параметром « setfiletime » и указать новое время создания и изменения файла.

В примере выше для файла « myfile.txt » устанавливается время создания – « 24-06-2003 17:57:11 » и время изменения – « 22-11-2005 10:21:56 ».

NewFileTime

Если программа BulkFileChanger от Nirsoft вам не подошла, то вы можете использовать другие программы для изменения даты создания файла. Например, можно воспользоваться NewFileTime от SoftwareOK.

NewFileTime (официальный сайт) – небольшая бесплатная программа для управления датами создания и изменения файлов. Позволяет сделать файлы «моложе», «старше» или установить конкретную дату и время. NewFileTime не требует установки и готова к работе сразу после скачивания.

В окне программы NewFileTime доступно несколько вкладок:

вкладки в NewFileTime

Для того чтобы изменить время создания файла с помощью NewFileTime нужно открыть данную программу на компьютере и перетащить в нее файлы.

перенос файлов в NewFileTime

После этого нужно выбрать одну из вкладок, в зависимости от способа изменения даты, установить нужные значения и нажать на кнопку « Установить время ».

изменение даты создания файла

После этого можно возвращаться в Проводник Windows и проверять изменения. Если все было сделано правильно, то после нажатия на F5 в проводнике отобразится новое значение.

Команды PowerShell

Если нет возможности устанавливать сторонние программы, то можно изменить дату вручную. Для этого нужно использовать командную строку PowerShell. Чтобы запустить PowerShell можно нажать комбинацию клавиш Win-R и выполнить команду « powershell » или воспользоваться поиском в меню « Пуск ».

запуск powershell


После запуска PowerShell нужно выполнить команды, которые изменят информацию о документе. Внизу приведены примеры таких команд для редактирования даты создания, даты изменения и даты доступа к файлу ( D:\tmp\file.txt ).

На скриншоте внизу показано, как эти команды выглядят в консоли PowerShell.

команды в консоли PowerShell

Если нужно внести изменения для всех файлов в папке (« d:\test\ » и в подпапках), то нужно использовать следующие команды:

Если же нужно внести изменения только для файлов (без обхода вложенных подпапок), то нужно использовать следующий вариант команд:

Изменение даты в системе

В крайнем случае можно изменить системное время, открыть файл и сохранить его под другим именем используя опцию « Сохранить как ». Это позволит изменить дату изменения и создания файла.

В Windows 10 для того, чтобы изменить системное время, необходимо открыть меню « Параметры » ( Win-i ) и перейти в раздел « Время и язык – Дата и время ». Здесь нужно отключить опцию « Установить время автоматически » и нажать на кнопку « Изменить ».

отключение автоматического времени

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

изменение системного времени

После изменения системной даты можно выполнить повторное сохранение файла с помощью меню «Ф айл – Сохранить как ».

меню Файл – Сохранить как

В результате дата изменения и создания файла будет изменена на текущее системное время.

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

Если вы хотите изменить такие атрибуты файла, у вас есть несколько вариантов. Вы можете использовать новую оболочку Windows PowerShell, чтобы изменить или удалить эти данные, или вы можете сделать это с помощью проводника Windows или другого стороннего приложения, такого как Attribute Changer. Вот как изменить атрибуты файла в Windows 10 с помощью этих методов.

Удаление атрибутов файла с помощью проводника Windows

Если вы хотите изменить дату последнего изменения или другие атрибуты файла в Windows 10, возможно, вы в первую очередь захотите сделать это с помощью меню « Свойства» для файла в проводнике Windows.

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

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

  • Чтобы удалить определенные личные атрибуты файла, откройте проводник Windows и найдите файл. Щелкните файл правой кнопкой мыши и нажмите " Свойства" .
  • В поле « Свойства» перейдите на вкладку « Сведения », затем щелкните ссылку « Удалить свойства и личную информацию» .
  • Как мы уже упоминали, вы не можете удалить или изменить дату создания файла или другие важные атрибуты файла здесь. Если к вашему файлу прикреплена другая личная информация, вы можете создать копию файла с удаленной информацией, нажав кнопку « Создать копию со всеми возможными удаленными свойствами» , а затем нажмите « ОК», чтобы сохранить и выполнить действие. Копия вашего файла появится в той же папке, что и исходный файл, с удаленными выбранными вами атрибутами.
  • Чтобы удалить эту информацию из существующего файла, выберите вместо этого параметр Удалить следующие свойства из этого файла, а затем выберите свойства, которые вы хотите удалить. Нажмите ОК, чтобы сохранить и удалить эту информацию из файла.
  • Вы также можете использовать проводник, чтобы изменить или установить другие атрибуты файла, например, являются ли ваши файлы скрытыми или доступными только для чтения. В поле « Свойства» перейдите на вкладку « Общие », затем установите флажки « Скрытый» или « Только для чтения», чтобы включить или отключить эти параметры, затем нажмите « ОК» для сохранения.

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

Изменение атрибутов файла с помощью PowerShell

Команда attrib из Windows PowerShell позволяет просматривать и изменять атрибуты файлов для файлов Windows 10. Он входит в стандартную комплектацию, поэтому для его использования не требуется никакого дополнительного программного обеспечения.

Это довольно сложный метод, но также весьма ограниченный. Если вам нужен более простой способ изменения атрибутов файла, используйте приложение Attribute Changer, указанное ниже.

  • Для начала откройте окно PowerShell - желательно с правами администратора. Для этого щелкните правой кнопкой мыши меню «Пуск» Windows и нажмите PowerShell (Admin), чтобы запустить новое окно PowerShell с включенными правами администратора.
  • Используйте команды cd и ls для перемещения папок и просмотра содержимого файлов. Оказавшись в нужной папке, вы можете перечислить все соответствующие атрибуты для вашего файла, набрав Get-ItemProperty -Path file | Format-list -Property * -Force , заменяя файл на путь к файлу.
  • Вы можете использовать команду Set-ItemProperty для изменения атрибутов файла, таких как доступ только для чтения. Для этого введите Set-ItemProperty -Path file -Name IsReadOnly -Value True , заменив файл своим именем файла. Полный список возможных переменных для этой команды см. В полной документации Microsoft PowerShell .

Успешное изменение приведет к тому, что PowerShell не вернет ответа, но вы можете проверить, было ли оно успешным, набрав Get-ItemProperty -Path file | Format-list -Property * -Force еще раз или просмотрев свойства файла с помощью проводника.

Как мы уже упоминали, это не самый простой способ изменить атрибуты файла. Существуют сторонние приложения, такие как Attribute Changer, чтобы сделать это намного проще, а также позволяют вам изменить дату последнего изменения и многое другое.

Использование Attribute Changer для изменения атрибутов файлов Windows 10

Attribute Changer предлагает лучший способ изменить атрибуты файла в Windows. Наряду с типичными скрытыми атрибутами и атрибутами, доступными только для чтения, Attribute Changer позволяет изменять даты доступа и создания файлов, а также другие параметры.

Читайте также: