我正在尝试使用导入的 CSV 文件中的变量来替换字符串中的变量。
这是代码。
param( [string] $CSV)
$VMs = Import-Csv $CSV
Foreach ($VM in $VMs) {
psexec \\$VM.VM_Name -h netsh interface ip set address name='"Local Area Connection"' static $VM.IP_Address 255.255.255.0 $VM.Gateway 1
}
这是它返回的内容:
psexec \@{VM_Name=TESTCSVVM; IP_地址=10.12.81.82;网关=10.12.81.1;VLAN=H Q_VM_81}.VM_Name -h netsh interface ip set address name="Local Area Connection" static 10.12.81.82 255.255.255.0 10.12.81.1 1
这是我想要的样子:
psexec \TESTCSVVM -h netsh interface ip set address name="本地连接" static 10.12.81.82 255.255.255.0 10.12.81.1 1
这是 CSV 文件:
"VM_Name","IP_Address","Gateway","VLAN" "TESTCSVVM","10.12.81.82","10.12.81.1","HQ_VM_81"
如何确保 \ 和第一个变量 $VM.VM_Name 之间没有空格?
谢谢