0
Я хочу удалить файлы bak после zip из любой подпапки для заданного пути, поэтому все дубликаты файлов с расширением .bak будут удалены, я запускаю сценарий ниже, но получаю ошибку.Ошибка при запуске скрипта powershell
$filePath = "d:\Test\"
$Afiles = Get-ChildItem -Recurse -Path $filePath | Where-Object {$_.Extension -eq ".bak"}
$Bfiles = Get-ChildItem -Recurse -Path $filePath | Where-Object {$_.Extension -eq ".7z"}
$Alist = @()
$Blist = @()
foreach($A in $Afiles) {
$Alist += $A.baseName
}
foreach($B in $Bfiles) {
$Blist += $B.baseName
}
foreach($A in $Alist) {
if($Blist -contains $a)
{
rm ("$A.bak")
}
}
Я получаю ниже ошибки:
Remove-Item : Cannot find path 'C:\Users\******\Desktop\master_backup_2015_08_21_013722_8370267.bak' because it does not exist.
At C:\Users\*****\Desktop\duplicatedelete1.ps1:26 char:10
+ rm <<<< ("$A.bak")
+ CategoryInfo : ObjectNotFound: (C:\Users\****....722_8370267.bak:String) [Remove-Item], ItemNotFoundException
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.RemoveItemCommand
Он по-прежнему дает ошибку, как показано ниже: Remove-Item: Не удается найти путь 'D: \ Test \ AdventureWorks2012_backup_2015_08_21_013722_9618283.bak', потому что он не существует. В строке: 26 char: 10 + rm <<<< (Join-Path $ filePath -ChildPath "$ A.bak") + CategoryInfo: ObjectNotFound: (D: \ Test \ Adventu ... 722_9618283.bak: String) [Remove-Item], ItemNotFoundException + FullyQualifiedErrorId: PathNotFound, Microsoft.PowerShell.Commands.RemoveItemCommand – Mehul
путь «D: \ Test» .. теперь файлы находятся в подпапке1, вложенной папке2 в тестовой папке, но, согласно сценарию, пытается удалить файл .bak из d: \ Test \ filename path..where, он не находит его. Что не так в запросе? – Mehul
запрос должен пойти, чтобы удалить файл в подпапке тестовой папки ... но почему после получения имени файла он пытается удалить его только из родительской папки? – Mehul