배열을 사용하여 아래의 스크립트를 여러 경로로 실행하려고합니다. 내 목표는 지난 7 버전을 유지하는 폴더를 삭제하는 것이지만 예상대로 작동하지 않습니다. 작업은 첫 번째 경로 D:\Test1
만 고려합니다.각 폴더를 반복하고 일부를 삭제하십시오
ForEach-Object
이후에 ($folders in $folders)
과 같은 것을 추가해야한다고 생각합니다.
내가 여기에 무엇을 놓쳤는가?
$path = @("D:\Test1","D:\Test2","D:\Test3")
$folders = Get-ChildItem -Path $path -Recurse |
Where-Object { $_.PSIsContainer } |
Group-Object { $_.Name.Split('_')[0] } |
ForEach-Object $Folders {
$_.Group |
sort CreationTime -Descending |
Select -Skip 7 |
foreach { Remove-Item $_.FullName -Force -WhatIf }
}
감사합니다. 스크립트가 더 좋아 보이지만 여전히 예상대로 작동하지 않습니다. 즉, 조치가 계정에 첫 번째 경로 "D : \ Test1"을 사용 중이고 나머지는 모두 삭제 중임을 의미합니다. 다음과 같은 두 가지 경로로 테스트 폴더를 만들려면 아래 스크립트를 사용하고 있습니다. 1..10 | Foreach 개체 {새 항목 -ItemType 디렉터리 C : \ Users \ ad_karendex \ Documents \ TEST_1 \ 폴더 _ "$ _"} 1..10 | Foreach 개체 {새 항목 -ItemType 디렉터리 C : \ Users \ ad_karendex \ Documents \ TEST_1 \ Test _ "$ _"} – KarenD
확인해 보겠습니다. @ Taana_CR –
@Ranadip Dutta 감사합니다! – KarenD