我有一個腳本,我在$ args中傳遞服務器名稱。將多個值傳遞給單個PowerShell腳本參數
這樣我可以做的東西使用foreach
這個(這些)服務器(S):
.\script.ps1 host1 host2 host3
foreach ($i in $args)
{
Do-Stuff $i
}
我想添加稱爲VLAN名爲可選參數。我已經試過:
Param(
[string]$vlan
)
foreach ($i in $args)
{
Write-Host $i
}
Write-Host $vlan
它的工作原理,如果你傳遞一個-vlan
參數,但如果你不那麼腳本自動的最後一個服務器名稱分配給$vlan
。
那麼,如何將單個或多個參數以及可選的命名參數傳遞給PowerShell腳本?
理想的是,在這裏是有效的例子:
.\script.ps1 host1
.\script.ps1 host1 host2 host3
.\script.ps1 host1 host2 -vlan office
感謝您提供關於如何調用腳本的信息 - 我經常會在PowerShell中忽略那些小碎片。 – 2018-02-21 16:00:33