2
比方說,你在做這樣的事情:PowerShell的 - 添加一列到一個數組
$partitions = get-wmiobject -query "Associators of {Win32_DiskDrive.DeviceID=""$DevID""} WHERE AssocClass = Win32_DiskDriveToDiskPartition" -computer $ComputerName
然後,如果您想獲得每個磁盤的磁盤標題(即「C:」),你需要的東西像這樣:
function GetDiskCaption {
param ($Partition, $ComputerName)
$DeviceID = $Partition.DeviceID
$colLogicalDisk = get-wmiobject -query "Associators of {Win32_DiskPartition.DeviceID=""$DeviceID""} WHERE AssocClass = Win32_LogicalDiskToPartition" -computer $ComputerName
If ($colLogicalDisk.Caption -ne $null) {
return $colLogicalDisk.Caption
} Else {
return "UNASSIGNED"
}
}
我不是一個非常先進的PowerShell用戶,所以這個問題是最新最好的PowerShell的方式向磁盤字幕添加到陣列,這樣可以把它管道進入,比如說,英尺或其它一些腳本?
現在我意識到我可以做一個foreach循環來打印出來,但我想弄清楚如何用額外的列擴展數組,以便我可以使用管道操作符來格式化數組。
MS站點上的數組處理示例都基於一維數組,因此添加數組似乎不是答案。
我特別試圖編寫一個腳本來轉儲出它們的iSCSI映射(如果有)和該磁盤上的各個分區的磁盤列表。
伊恩
完美的,這是第二個語法我一直在爭取與。我剛剛認爲必須有更好的方法。第一個也許更簡單。我將不得不查看關聯數組。 – Ian