【发布时间】:2018-09-11 10:32:25
【问题描述】:
众所周知,PowerShell 具有古怪的返回语义。
Function return value in PowerShell 表明我有两个主要想法:
- 所有输出都被捕获并返回
- return 关键字只是表示一个逻辑退出点
即使在外部作用域中保留变量之类的事情也会导致输出,例如[boolean]$isEnabled。另一个不错的是$someCollection.Add("toto"),它会吐出新的收集计数。甚至Append() 函数也会导致输出。
例如:
Function MyFunc {
$res1 = new-object System.Text.StringBuilder
$res1.Append("titi");
$res2 = "toto"
return $res2
}
$s = MyFunc
Write-Host $s
输出为:titi toto。
预期的输出应该是toto。
如何使用powershell函数返回期望值? (至少从更传统的编程角度来看)
【问题讨论】:
标签: powershell