小编sdv*_*225的帖子

在两个PowerShell阵列中查找常见项

我知道已经有一些堆栈溢出问题,但我已经尝试了很多解决方案并且不断出现同样的错误.问题是这样的:

我有2个数组(每个索引代表一个文件夹)

$originDirsArr = @(2, 257, 256, 3, 4, 10)
$tempDirArr = @(2, 257, 256, 3, 4)
Run Code Online (Sandbox Code Playgroud)

我想再次比较$ arr2 $ arr1,如果$ arr1中有东西不在$ arr2中,则删除它.即,在这种情况下,$ arr2中的10个DNE,因此该文件夹应该被删除.

这是我尝试过的:

$c = Compare-Object -ReferenceObject ($originDirsArr) `
 -DifferenceObject ($tempDirArr) -Passthru
$c
Run Code Online (Sandbox Code Playgroud)

也:

while ($t -lt $originDirsArr.length){
$originDirsArr[$t]
    if ( $tempDirArr -notContain $originDirsArr[$t]){
        "$_ does not exist in original and needs to be deleted"
    }else{
        "$_ does still exist in the temp"
    }
    $t++
}
Run Code Online (Sandbox Code Playgroud)

最后:

Compare-Object $originDirsArr $tempDirArr | ForEach-Object { $_.InputObject }
Run Code Online (Sandbox Code Playgroud)

每次我不断得到某种错误,无论是ReferenceObject还是DifferenceObject都是null.我知道它不是null因为我可以打印出内容,即使在那个例子中在t上编入索引,我仍然有内容.

在先进的感谢,任何帮助将不胜感激!

arrays powershell

3
推荐指数
1
解决办法
6482
查看次数

标签 统计

arrays ×1

powershell ×1