当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 构建自定义 PowerShell 三元运算符

作者:精品下载站 日期:2024-12-14 12:39:33 浏览:15 分类:玩电脑

构建自定义 PowerShell 三元运算符


if/then 构造在 PowerShell 代码中很常见,但您是否知道还有另一种称为三元运算符的方法,可以让您的 if/then 构造更加简洁?让我们学习如何构建自定义 PowerShell 三元运算符。

有人说,以牺牲可读性为代价,三元运算符构建了更简洁、更简单且代码更少的条件逻辑。它们是正确的,但在 PowerShell 中具有类似三元的行为真是太好了!

如果您不熟悉三元运算符,它基本上是使用哈希表或类似的结构来根据标准做出条件决策。

PowerShell 中的“如果/那么”

为了解释 Powershell 三元运算符,我们首先从 if/then 结构的示例开始。

$CarColor = 'Blue'
if ($CarColor -eq 'Blue') {
    'The car color is blue'
} else {
    'The car color is not blue'
}

乍一看,你可能不会觉得有什么问题。事实上,确实没有,但这种情况可以用一行轻松地测试(在我个人的 115 个字符的限制下)。

现在构建一个包含两个键的 PowerShell 哈希表; $true$false。然后,设置您希望在满足您定义的条件时显示的值。

@{ $true = 'The car color is blue'; $false = 'The car color is not blue' }
[$CarColor -eq 'Blue']

接下来,定义条件($CarColor is Blue)并使用 $CarColor -eq 'Blue' 检查是否满足该条件。

$CarColor = 'Blue'
@{ $true = 'The car color is blue'; $false = 'The car color is not blue'}
$CarColor -eq 'Blue'

现在使用条件 ($CarColor -eq 'Blue') 作为该哈希表中的键。这样做会执行检查,然后使用结果在哈希表中查找键。

完成 PowerShell 三元运算符

$CarColor = 'Blue'
@{ $true = 'The car color is blue'; $false = 'The car color is not blue'}[$CarColor -eq 'Blue']

[玩转系统] 构建自定义 PowerShell 三元运算符

一条线!这样是不是简洁多了?我没有使用 if/then 语句,而是使用哈希表并根据 $CarColor 是否等于 Blue 执行查找。然后将生成的索引输出到控制台。如果您想使用此方法,只需填写以下空白即可:

@{$true = $ResultyouwanttodoifTrue; $false = $ResultyouwantifFalse}[]

如果您愿意,您还可以不仅仅包含 $true$false。您可以在哈希表中添加任意数量的条件并检查它们。这是替换长 if/then 语句或 switch 语句的简单方法。

您现在拥有一个自定义的 PowerShell 三元运算符,您可以立即开始在脚本中使用!

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯