【发布时间】:2019-01-08 14:37:38
【问题描述】:
我正在尝试从 6.0 vCenter 迁移到 6.5 vCenter,并且想要迁移所有模板。如何一次选择所有集群以检索完整的模板列表?
我的 6.0 vCenter 中有很多模板,需要导出一个列表,以便使用 Powercli 在新的 6.5 vCenter 中一次性迁移所有模板。我发现的唯一方法是使用 foreach 循环,我必须在其中提供一个集群名称。 我尝试使用“get-datacenter”而不是“get-cluster”,但结果更糟。
$toto = foreach ($vmhost in Get-Cluster 'my_cluster'|Get-VMHost) {
Get-Template -Location $vmhost |
select name, @{n='VMHOST';e={$vmhost.name}},
@{n='VMTX';e={$_.extensiondata.config.files.VmPathName}}
}
$toto | Export-Csv C:\scripts\Templates.csv
代码有效,但没有显示 vCenter 中的所有模板。 我怎样才能让它工作,以便我可以一次拥有所有集群中的所有模板,而不为每个模板使用循环?
【问题讨论】:
-
在将
Datacenter实例传递给Get-Cluster时,您能否详细说明“结果更糟”的含义?您是否尝试过将Datacenter作为Get-Template的-Location参数传递,如the documentation 中的示例所示? -
我确实尝试过
Get-Template -Location DatacenterName | Select-Object Name,DatastoreIdList,但问题是DatastoreIdList返回了一个表。我没有尝试使用前面显示的foreach行。是的,它奏效了...谢谢 -
管道格式列表工作?
标签: powershell vmware powercli