我正在尝试导出一个 CSV 文件,其中包含集群中所有虚拟机的列表,这些虚拟机没有我用于调整大小的特定标签。但是,列表 CSV 中没有填充除以下内容之外的任何内容:ÿþ
Get-Module -Name VMware* -ListAvailable | Import-Module -Force
$exportto = "C:\Users\username\Desktop\rightSizingFilter3.csv"
$VMs = Get-Cluster -name clustername | Get-VM
foreach ($VM in $VMs){
If (((Get-Tagassignment $VM).Tag.Name -notcontains "testtag")){
Out-file $exportto -Append
}
}
答案1
另一节的答案:
Get-Module -Name VMware* -ListAvailable | Import-Module -Force
Connect-ViServer -Server [SERVERNAME] -Credential (Get-Credential)
$ExportTo = ".\rightSizingFilter3.csv"
$VMs = Get-Cluster -Name [CLUSTERNAME] | Get-VM
foreach ($VM in $VMs) {
If ( ((Get-Tagassignment $VM).Tag.Name -notcontains "testtag") ) {
Export-Csv -InputObject $VM -Path $ExportTo -Append -NoTypeInformation
}
}
答案2
我根据下面的代码片段让它工作:
$RS = foreach ($VM in $VMs){
If (((Get-Tagassignment $VM).Tag.Name -notcontains "testtag")){
Write-Output $VM
}
}
$RS | Out-file $exportto -Append