Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Новый участник


Сообщения: 11
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата DJ Mogarych:
»Ещё вариант
Скрытый текст

Код: Выделить весь код
$dir = "D:\temp"
$ext = "*.txt"
dir "$dir" -Directory |? {[System.IO.Directory]::EnumerateFiles("$_", "$ext", "Alldirectories")} |% {
$name = (dir $_ -Include "$ext" -File -Recurse -OutVariable files |sort length |select -Last 1).BaseName
$files |Compress-Archive -DestinationPath "$dir\$((get-date).ToString("yyyy-MM-dd-hh-mm-ss"))-$name.yyy"
}
Вываливается с ошибкой. Почему-то System.IO.Direcrory, монтируется в корне папки пользвателя? А может это так и надо, но суть в том, что основная папка находится не там - от того и ошибка. Попробовал заменить System.IO.Directory на $dir - в таком случае не работает продолжение команды (это все единое целое, как я понял).
Скрытый текст

Код: Выделить весь код
Исключение при вызове "EnumerateFiles" с "3" аргументами: "Не удалось найти часть пути "C:\Users\admin\com.adobe.read
er"."
C:\Users\admin\Documents\Raccoon\content\test_apps\test.ps1:4 знак:27
+ ... rectory |? {[System.IO.Directory]::EnumerateFiles("$_", "$ext", "Alld ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DirectoryNotFoundException

Отправлено: 13:15, 29-04-2021 | #19