Powershell 脚本(win10)
function eineFunction($meinHost, $meinPass){
Write-Host $meinHost "--"
Write-Host $meinPass "--"
}
$MeineHosts=(
("host1", "pass1"),
("host2", "pass2")
)
clear
foreach($row in $MeineHosts){
Write-Host $row[0]
Write-Host $row[1]
eineFunction($row[0], $row[1])
}
输出:
host1
pass1
host1 pass1 --
--
host2
pass2
host2 pass2 --
所需输出:
host1
pass1
host1 --
pass1 --
host2
pass2
host2 --
pass2 --
我做错了什么?
谢谢
答案1
应调用 PowerShell 中的函数没有括号 – 它们的作用类似于命令。例如:
eineFunction $row[0] $row[1]
如果你使用($row[0], $row[1])
,这实际上会创建一个新的2 项列表将作为第一个参数传递 - 而没有任何内容作为第二个参数传递。