#excel #date
#excel #Дата
Вопрос:
Мне нужен скрипт, который считывает дату последнего изменения файла и кем он был изменен, и выводит данные в Excel. Я нашел скрипт, который изменяет дату изменения.
$a = get-date
$b = Get-ChildItem "C:Intel" -recurse | ? { !$_.psiscontainer }
foreach ($i in $b)
{
$i.LastWriteTime = $a
}
$b
Ответ №1:
Вы можете легко получить LastWriteTime, проверив свойство LastWriteTime файла.
get-childitem * | select FullName,LastWriteTime,Owner
Вы можете проверить владельца файла, который может быть или не быть последним человеком, который изменялся, в зависимости от типа файла. Некоторые файлы office сменят владельца на последнего пользователя, который им писал, но я не уверен, что это надежно.
get-childitem * | ForEach-Object {get-acl $_ | select owner}
NTFS не регистрирует последнего пользователя, который изменил файл. Вы можете либо включить аудит и проверить журнал событий системного аудита, либо заглянуть в класс filesystemwatcher и создать пользовательский скрипт, который отслеживает изменения в папке. (Предупреждение: это может вызвать проблемы с производительностью.)