只是想知道你是否可以帮助我。我正在尝试比较两个列表(txt 文件)并找到列表 A 中而不是列表 B 中的字符串并将其输出到另一个 txt 文件中。任何人都知道如何用 powershell 做吗?
这是我目前所拥有的:
Compare-Object -ReferenceObject $FolderLists -DifferenceObject $AdUserName -passThru
我想找到 $FolderLists 而不是 $AdUserName 中的所有字符串,并可能将其输出到另一个变量。我遇到的问题是它输出的字符串不在两个列表中。
最佳答案
我假设 $FolderList 和 $AdUserName 是字符串数组?您实际上并不需要 Compare-Object 来比较数组。就这么简单:
$FolderList | ?{$AdUserName -notcontains $_}
Compare-Object 用于将对象集合的指定属性与公共(public)属性进行比较。如果你真的想要,你可以使用Compare-Object来做到这一点,就像这样:
Compare-Object $FolderList $AdUserName | ?{$_.SideIndicator -eq '<='} | Select-Object -ExpandProperty InputObject
但如您所见,它对于这项任务来说有点矫枉过正。
要将结果输出到另一个变量,只需对其赋值即可:
$AnotherVariable = $FolderList | ?{$AdUserName -notcontains $_}
关于windows - 使用 powershell 比较两个列表并查找列表一中的名称而不是列表二中的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19012457/