2

PowerShell 有一些语法特性,我找不到太多文档。今天我的问题是? {...}

例子

PS> Get-SPServiceInstance | ? {$_.GetType.toString() -eq $varname}

我明白管道是什么意思。我很确定$_用于在某种循环中引用当前项目。

有人可以解释这是什么意思吗?如果有人能指出我可以找到有关 PowerShell 保留符号的地方,那也很棒。

4

3 回答 3

5
[^_^]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”的别名

于 2012-07-12T20:48:17.580 回答
4

“?” 是Where-Objectcmdlet 的别名。Where-Object接受一个脚本块(例如'{...}')并评估其代码。如果代码计算结果为 $true,则当前对象被写入管道并可供链中的下一个命令使用,否则 ($false) 对象将被丢弃。

如需更多帮助,请键入:

Get-Help Where-Object -Full
于 2012-07-13T08:46:39.777 回答
1

? 只是 where-object 的别名。您可以使用 get-alias 命令获取所有已注册别名的列表。

于 2012-07-12T20:48:13.610 回答