Как повлиять только на каталоги с помощью Move-Item в PowerShell?
Я выравниваю каталог и хочу переместить элементы, которые являются каталогами, но оставить файлы нетронутыми.
К сожалению, не существует определенного шаблона, по которому можно было бы сопоставить подстановочные знаки между каталогами и файлами. Я хочу знать, можно ли сказатьMove-Item
только для проверки каталогов (или файлов на обратной стороне).
Изучение выводаGet-Help -Name Move-Item
это не представляется возможным напрямую (т.е. с помощью такого параметра, как-ItemType
). Насколько я понимаю, это можно было бы сделать с помощью хака, например-Exclude *.*
, но мне нужно более надежное решение. Спасибо.
1 ответ
Не следует рассматривать только саму функцию, помните, что PowerShell обладает мощными возможностями конвейеризации . Чтобы переместить только каталоги, сначала отфильтруйте их, а затем перенесите вMove-Item
, например:
Get-ChildItem -Path C:\Some\Dir -Directory | Move-Item -Destination C:\Other\Dir
-Directory
переключательGet-ChildItem
означает, что будут найдены только дочерние папки.