Я создал сценарий PowerShell 4 для резервного копирования VbaProject Outlook 2013.OTM-файл, скопировав его из рабочего каталога в каталог резервного копирования и добавив суффикс имени файла с текущей датой и временем. Скопированная версия имеет измененную дату и время, когда VbaProject.ОТМ был впервые сохранен. Я потратил все утренние исследования на посты, пытаясь выяснить, как изменить свойство Date Modified файла резервной копии на текущую дату и время, но все, что я пробовал, просто заканчивается сообщениями об ошибках. Есть ли простой способ сделать это?

# FD_VBA_Backup.ps1
$date = get-date -format "MMddyyyy HHmm"
$fnft = "VbaProject - " + $date + ".OTM"
$source = "C:\Users\OCCReportManager\AppData\Roaming\Microsoft\Outlook\VbaProject.OTM"
$dest = "D:\FD Automation VBA Backups\" + $fnft
copy-item $source $dest  # results in eg. "VbaProject - 07202015 0936.OTM"

Был похожий вопрос о том, как создать пустой файл и установить свойство date. Решение моего вопроса также было в одной строке, но найти его было нелегко. Название другого вопроса не делает очевидным, что решение можно найти внутри, так как мне нужно изменить дату в существующем файле, а не создавать новый файл. Ссылка: эквивалент Linux `touch` для создания пустого файла с PowerShell? ,

1 ответ1

0

С благодарностью @DavidPostill:

# FD_VBA_Backup.ps1
$date = get-date -format "MMddyyyy HHmm"
$fnft = "VbaProject - " + $date + ".OTM"
$source = "C:\Users\OCCReportManager\AppData\Roaming\Microsoft\Outlook\VbaProject.OTM"
$dest = "D:\FD Automation VBA Backups\" + $fnft
copy-item $source $dest  # results in eg. "VbaProject - 07202015 0936.OTM"

(Get-ChildItem $dest).LastWriteTime = Get-Date

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .