Задать вопрос
@imbacode

Powershell как удалить много файлов с удалением через конвейер?

Есть несколько тысяч папок с ром играми в текущей директории, в каждой кроме хорошего дампа рома лежит куча ненужных, собственно написал такую команду, чтобы оставались только файлы заканчивающиеся на [!].nes

Get-ChildItem * -Recurse | Where-Object {$_.name -notmatch ".+[^W\]](\[\!\]\.nes)$"} | ForEach-Object { Remove-Item -LiteralPath $_.Name }


Первая часть (до ForEach-Object) отрабатывает корректно, файлы по шаблону отбираются правильно, но удаляются только файлы в первой по очереди поддиректории, во второй и следующих не удаляются, то есть задача такая - чтобы в каждой поддиректории остались только файлы которые соответствуют шаблону (удалялись те, которые не соответствуют). Пробовал с -match и копированием в другую папку - тоже не работает. Что делаю не так? Помогите пожалуйста.
  • Вопрос задан
  • 396 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Stepik
    PowerShell для начинающих: Основы для IT-специалистов
    1 неделя
    Далее
  • Яндекс Практикум
    Специалист по информационной безопасности
    11 месяцев
    Далее
  • Skillbox
    Системный администратор с нуля
    6 месяцев
    Далее
Решения вопроса 1
@MaxKozlov Куратор тега PowerShell
для удаления вместо Name используйте FullName - имя с полным путём
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Монетка Екатеринбург
от 130 000 до 160 000 ₽
Vital Partners Москва
от 200 000 до 300 000 ₽
от 1 600 до 2 000 $