PowerShell有一些语法特性,我找不到很多文档。今天我的问题是? {...}
例如
PS> Get-SPServiceInstance | ? {$_.GetType.toString() -eq $varname}
我理解管道意味着什么。我很确定$_
用于引用某种循环中的当前项。
有人可以解释这意味着什么吗?如果有人能指出我可以找到有关PowerShell保留符号的地方,那就太棒了。
答案 0 :(得分:3)
[^_^]16:46:21[1]>get-help ?
Name Category Synopsis
---- -------- --------
% Alias ForEach-Object
? Alias Where-Object
h Alias Get-History
r Alias Invoke-History
“?”是“where-object”的别名
答案 1 :(得分:2)
'?'是Where-Object
cmdlet的别名。 Where-Object
获取一个scriptblock(例如'{...}')并评估其代码。如果代码的计算结果为$ true,则当前对象将写入管道,并且可用于链中的下一个命令,否则($ false)将丢弃该对象。
如需更多帮助,请输入:
Get-Help Where-Object -Full
答案 2 :(得分:1)
?只是where-object的别名。您可以使用get-alias命令获取所有已注册别名的列表。