我正在尝试将两个参数传递给PowerShell中的函数,我发现了奇怪的结果。当我将参数传递给函数并将其输出为组合字符串时,所有参数都显示在第一个参数的位置。
继承我的代码:
$s = "D:\"
$o = "I:\"
function a($source, $output){
Write-Output $source
Write-Output $output
Write-Output "exe $source --parameter $output"
}
Write-Output $s
Write-Output $o
Write-Output "exe $s --parameter $o"
a($s, $o)
输出:
D:\
I:\
exe D:\ --parameter I:\
D:\
I:\
exe D:\ I:\ --parameter
注意“I:\”位于不同的地方
我想调用该函数并获得此输出:
D:\
I:\
exe D:\ --parameter I:\
任何人都可以帮我解决如何避免这种情况吗?
答案 0 :(得分:1)
我刚刚得出结论,如果我在没有括号和逗号的情况下调用我的函数,它就会按照我想要的方式工作。
a $s $o
输出:
D:\
I:\
exe D:\ --parameter I:\