Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] удалить все пустые подпапки (http://forum.oszone.net/showthread.php?t=285520)

firstarey 24-07-2014 11:26 2380657

удалить все пустые подпапки
 
я конечно извиняюсь, но что то не нашел по этому поводу ничего.

суть:
есть каталог $ZipPath
необходимо удалить все пустые подпапки в этом каталоге

Remove-Item "$ZipPath\", но как именно ?

Kazun 24-07-2014 11:32 2380660

Код:

Get-ChildItem -Path $ZipPath -Directory | Where-Object {(Get-ChildItem -Path $_.FullName -Force -Recurse) -eq $null} | Remove-Item

firstarey 25-07-2014 11:02 2381086

Kazun, оно как то странно. вроде отработало, но при каждом вызове пишет:
Код:

Get-ChildItem : Не удается найти параметр, соответствующий имени параметра "Directory".
\\serv\Otdely\ZUR\ПРОЕКТЫ\Поломошнов А.А\XML_sort\XML-приборка 2-14.ps1:725 знак:44
+    Get-ChildItem -Path $ZipPath -Directory <<<<  | Where-Object {(Get-ChildItem -Path $_.FullName -Force -Recurse) -eq $null}
 | Remove-Item
    + CategoryInfo          : InvalidArgument: (:) [Get-ChildItem], ParameterBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand

версия PoS скорее всего 1 (та, что на XP ставиться)

Kazun 25-07-2014 11:11 2381088

Параметр Directory появился в PowerShell v3. Обновляйте в XP до PowerShell v2.

Код:

Get-ChildItem -Path $ZipPath  |
        Where {$_.PsIsContainer -and (Get-ChildItem -Path $_.FullName -Force -Recurse) -eq $null} | Remove-Item


firstarey 25-07-2014 11:47 2381105

Kazun, посмотрел внимательно - вторая стоит. Благодарю.


Время: 21:34.

Время: 21:34.
© OSzone.net 2001-