如果 vm.txt 文件中存在 vm-name,则应启动 Powershell 脚本。例子:
get-vm | foreach-object -process {
If ($_.Name --matches one of the entries in the .txt File) {
execute this part }
else { execute this part }
vm.txt 文件:server01 server02 server03
非常感谢!!
如果 vm.txt 文件中存在 vm-name,则应启动 Powershell 脚本。例子:
get-vm | foreach-object -process {
If ($_.Name --matches one of the entries in the .txt File) {
execute this part }
else { execute this part }
vm.txt 文件:server01 server02 server03
非常感谢!!
目前尚不清楚 vm 文件是在一行中包含所有名称还是在其自己的一行中包含每个名称。前者使用 -match,后者将 -match 替换为 -contains。
$content = Get-Content vm.txt
get-vm |
where-object { $_.Name -match $content } |
foreach-object { 'execute this part'}
使用-contains
运算符检查名称列表是否包含特定名称:
$vmlist = Get-Content vm.txt
Get-VM | % {
if ( $vmlist -contains $_.Name ) {
# execute this part
} else {
# execute that part
}
}