Я пытаюсь создать сценарий PowerShell, который получает список папок в каталоге, который фильтруется регулярным выражением, отсеивающим имена папок с помощью nnnnnnx31 или nnnnnnddd, где n = буквенные символы для первых 6 символов и последние 3 являются числами статической строки x31. Далее показывается, если файлы старше 90 дней, которые будут скопированы в другой каталог.
Когда я пытаюсь запустить:
get-childitem | where {$_.name -match "^\d{6}([a-zA-Z]{3}|x31)$"} | where {$_.lastwritetime -lt (get-date.adddays(-90)}
Я получаю ошибку:
You must provide a value expression on the right-hand side of the -lt operator
At line: 1 char: 96
+ get-childitem | where {$_.name -match "^\d{6}([a-zA-Z]{3}|x31)$"} | where {$_.lastwritetime -lt <<<< get-date.adddays(-90)}
Я также попробовал следующее, и это не сработало:
get-childitem | where {$_.name -match "^\d{6}([a-zA-Z]{3}|x31)$"} | where {$_.lastwritetime -lt (get-date | foreach-object {$_.adddays(-90)}) }
Есть идеи?