作業中の各サーバー内のファイル システム パーティションが正しく配置されていることを確認しようとしています。次のスクリプトを実行しようとすると、使用するifステートメントに基づいて、すべての仮想サーバーが調整されているか、調整されていないと主張します(1つはコメントアウトされています)。
$myArr = @()
$vms = get-vm | where {$_.PowerState -eq "PoweredOn" -and $_.Guest.OSFullName -match "Microsoft Windows*" } | sort name
foreach($vm in $vms){
$wmi = get-wmiobject -class "win32_DiskPartition" -namespace "root\CIMV2" -ComputerName $vm
foreach ($partition in $wmi){
$Details = "" | Select-Object VMName, Partition, Status
#if (($partition.startingoffset % 65536) -isnot [decimal]){
if ($partition.startingoffSet -eq "65536"){
$Details.VMName = $partition.SystemName
$Details.Partition = $partition.Name
$Details.Status = "Partition aligned"
}
else{
$Details.VMName = $partition.SystemName
$Details.Partition = $partition.Name
$Details.Status = "Partition not aligned"
}
$myArr += $Details
}
}
$myArr | Export-CSV -NoTypeInformation "C:\users\a411882\Documents\Scripts\PartitionAlignment.csv"
私のコードの何が問題なのか誰にも分かりませんか? 私はまだパーティションについて学んでいるので、整列を確認するために開始オフセット番号を確認する方法がわかりません。