如何将变量从文件分配给 Powershell 脚本?

How to assign variables to a Powershell script from a file?

我正在尝试使用 vsphere powerCLI 在 vcenter 中部署 20 个虚拟机,而不是一次又一次地提示 vmname/hostname 或传递参数 20 次我正在寻找从一个文件中传递 20 个虚拟机名称。

 = Get-content PATH

[ROWNUMBER]

这就是导入文件的方式,然后select其中的行号。

看到您想使用每一行,您可以这样做:

     = Get-content PATH
Foreach($Row in ){

New-VM $row
}

您可以快速完成此操作 one-liner,创建一个包含您要使用的标题和值的 csv 文件,如下所示:

VMName,Hostname
VM001,Server01
VM002,Server02
VM003,Server03

然后使用 Import-CSV 和 Foreach 遍历文件和 运行 你的命令(New-VM 用作示例)每一行的字段。

Import-Csv C:\folder\file.csv | Foreach { New-VM -VMName $_.VMName -Hostname $_.Hostname }