PowerShell 5 または > を使用して、パスが 50 のいずれかになる可能性がある場合にディレクトリ / サブディレクトリを削除します。

PowerShell 5 または > を使用して、パスが 50 のいずれかになる可能性がある場合にディレクトリ / サブディレクトリを削除します。

Windows 10 64 ビット。PowerShell 5.1

PowerShell 5 または > を使用して、パスが 50 のいずれかになる可能性がある場合に、ディレクトリ/サブディレクトリを削除します。

livebolivar.comおよびそのサブディレクトリを削除しますany of 50 folders named mmddyy

"%USERPROFILE%\desktop\websites\"any of 50 folders named mmddyy"\livebolivar.com"

%USERPROFILE%\desktop\websites\011920\livebolivar.com を削除します

見つけすぎです:

gci %USERPROFILE%\desktop\websites -recurse | Where-Object {($_.PSIsContainer)} | Foreach { if ( $_.Name -eq "livebolivar.com") {remove-item $_.fullname -confirm}} 

動作しませんでした:

gci -exclude favorites %USERPROFILE%\desktop\websites -recurse | Where-Object {($_.PSIsContainer)} | Foreach { if ( $_.Name -eq "livebolivar.com") {remove-item $_.fullname -confirm}} 

これにより、サブフォルダーが削除されました:

$path= @("%USERPROFILE%\desktop\websites\*\livebolivar.com")
$folders= gci -path $path -Recurse | Where-Object {$_.PsIsContainer} |Group-Object {$_.FullName.Split('_')[0] }
ForEach($folder in $folders){
$folder.Group | % { Remove-Item $_.fullname -recurse -force}} 

テストフォルダーを作成します。

pushd %USERPROFILE%\Desktop
foreach($i in -10..-1){
$z=(Get-Date).AddDays($i).tostring("MMddyy")
ni -itemtype directory $z\livebolivar.com\New Folder > $null}
ni -itemtype file $z\livebolivar.com\New Folder\test.txt > $null}
popd 
exit 

再帰的にディレクトリを削除する 再帰的にディレクトリを削除する remove-item でディレクトリとサブディレクトリを削除する ri でディレクトリとサブディレクトリを削除する

答え1

Windows 10 64 ビット。PowerShell 5.1

ワイルドカードを使用してディレクトリを再帰的に削除します。

gci $env:USERPROFILE\desktop\websites\*\livebolivar.com | % {ri $_.fullname -recurse -force -whatif}

% 入力オブジェクトのコレクション内の各項目に対して操作を実行します。

$_ はパイプからの現在の項目を表します。

.fullname は path\name.ext です

サブディレクトリはありませんか?-force必要ありません

gci $env:USERPROFILE\desktop\websites\*\livebolivar.com | % {ri $_.fullname -recurse -whatif} 

関連情報