仮想サーバーのキャビネット ファイルを削除するスクリプトを作成しようとしています。何らかの理由で、私が作成したコードはキャビネット ファイルを削除せず、代わりに WINDOWS ディレクトリ全体を削除しようとしますが、なぜこれが発生しているのかわかりません。何も見つからないので、誰かが問題が何であるかについて何か考えがあるかどうか興味がありました:
$dir = "\\$server" + '\C$\windows'
$cabinetArray = @()
foreach ($item in get-childitem -path $dir){
if ($item.name -like "*.cab"){
$cabinetArray = $cabinetArray + $item
}
}
for ($i = 0; $i -le $cabinetArray.length; $i++){
$removal = $dir + "\" + $cabinetArray[$i]
remove-item $removal -force -recurse
}
いくつかのテストを行ったところ、何らかの理由で、すべてのキャビネット ファイルを収集するために使用しようとしているアレイが、何らかの理由でいっぱいになっていないようです。.cab ファイルのみを収集する特定の方法があるかどうかはわかりません。現在、テスト サーバーでこれを実行すると、すべてを削除しようとするからです。