В этой статье будет рассмотрено руководство по циклическому обходу каталога с помощью PowerShell.
Как просмотреть файлы в каталоге с помощью PowerShell?
PowerShell может перебирать файлы в каталоге, используя « Для каждого() ' петля. Цикл «Foreach()» используется для одновременной обработки всех элементов, таких как переименование или копирование нескольких файлов. В то время ' Foreach-Object() Командлет обращается к одному элементу за раз в цикле. Он обрабатывает один элемент за раз.
Пример 1. Циклический просмотр файлов с использованием «Foreach-Object» в сценарии PowerShell
В этом примере мы пройдемся по файлам в каталоге с помощью PowerShell и напечатаем имена файлов, доступных внутри этого каталога:
Get-ChildItem 'К:\Док' |
Foreach-Object {
$_ .Полное имя
}
Согласно приведенному выше коду:
- Сначала добавьте « Get-ChildItem ” рядом с путем к каталогу, чтобы получить файлы, доступные внутри этого каталога.
- После этого используйте « | конвейер для передачи вывода в « Foreach-Object() ” для работы с каждым элементом в коллекции объектов ввода.
- Добавить ' $_.Полное имя ” для отображения имени извлеченных файлов из каталога:
Можно заметить, что файлы в каталоге отображаются в консоли PowerShell с помощью « Foreach-Object() ' петля.
Пример 2. Циклический просмотр файлов с использованием «Foreach-Object» с «-Recurse» в сценарии PowerShell
Теперь прокрутите подкаталоги, используя PowerShell « -рекурсия параметр:
Можно заметить, что файлы из подкаталогов также отображаются в консоли PowerShell.
Пример 3. Циклический просмотр файлов с использованием «Foreach-Object» в консоли PowerShell
Чтобы выполнить ту же операцию, прежде всего, давайте посмотрим доступные файлы, прежде чем удалять выбранный в соответствующем каталоге, используя « Get-ChildItem ” вместе с путем к каталогу:
> Get-ChildItem 'К:\Док'
Доступные файлы в каталоге отображаются в консоли PowerShell.
Теперь давайте удалим файлы с « .текст ', используя расширение ' Foreach-Object() » в PowerShell:
Get-ChildItem 'К:\Док' * .ps1 |Foreach-Object {
Убрать предмет $_ .Полное имя
}
Согласно приведенному выше коду:
- Сначала добавьте « Get-ChildItem », за которым следует путь к каталогу и « *.ps1 », чтобы выбрать файлы с расширением « .ps1 ' расширение.
- После этого используйте « | конвейер для передачи вывода в « Foreach-Object() ' петля.
- Внутри ' Foreach-Object() », добавьте « Убрать предмет ” для удаления файлов, полученных с помощью “ $_.Полное имя ' свойство:
Теперь давайте проверим, были ли файлы удалены или нет, получив файлы в каталоге:
> Get-ChildItem 'К:\Док'
Как видите, файлы с расширением « .текст ” были удалены с помощью цикла в PowerShell.
Заключение
Чтобы просмотреть файлы в каталоге « Foreach-Object() ” используется в PowerShell. Он обрабатывает и ссылается на один элемент за раз из набора элементов или объектов. Кроме того, это помогает удалять, переименовывать или копировать несколько файлов. В этой статье представлено полное руководство по циклическому просмотру файлов в каталоге с помощью PowerShell.