由于PowerShell有许多类似SQL查询的cmdlet,是否有一种快速方法可以检查对象是否在Where-Objectcmdlet 的其他对象列表中?
像SQL中的东西:
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...)
Run Code Online (Sandbox Code Playgroud)
当然我可以写一个简单的子程序,但我只是想知道是否有这样的功能.
Joe*_*oey 34
您可以使用-contains运营商:
Get-ColumnNames $table | Where-Object { value1,value2,... -contains $_ }
Run Code Online (Sandbox Code Playgroud)
虽然左侧有值集合,但它是向后的.
在PowerShell 3中,您还可以使用-in运算符:
Where-Object { $_ -in value1,value2,... }
Run Code Online (Sandbox Code Playgroud)
甚至
Where-Object -In value1,value2,...
Run Code Online (Sandbox Code Playgroud)
此外,有关PowerShell如何与比较运算符一起使用的怪癖,您可以将它们直接应用于左侧的集合:
Where-Object { value1,value2,... -eq $_ }
Run Code Online (Sandbox Code Playgroud)
-eq如果它在列表中,那么这里的运算符将产生相应的元素,或者$null(强制执行$false).
| 归档时间: |
|
| 查看次数: |
50184 次 |
| 最近记录: |