我有以下代碼可以根據大小轉換分配GB/TB值
$datastoreCapacity = $store.CapacityGB
$postfixes = @("GB", "TB", "PB" )
for ($i=0; $datastoreCapacity -ge 1024 -and $i -lt $postfixes.Length; $i ) { $datastoreCapacity = $datastoreCapacity / 1024; }
return "" [System.Math]::Round($datastoreCapacity,2) " " $postfixes[$i];
$datastoreFree = $store.FreeSpaceGB
$postfixes = @("GB", "TB", "PB" )
for ($i=0; $datastoreFree -ge 1024 -and $i -lt $postfixes.Length; $i ) { $datastoreFree = $datastoreFree / 1024; }
return "" [System.Math]::Round($datastoreFree,2) " " $postfixes[$i];
但是當我嘗試將回傳值分配給如下變數時,我收到錯誤
$datastoreCapacity = return "" [System.Math]::Round($datastoreCapacity,2) " "
請讓我知道如何將值存盤在變數中
uj5u.com熱心網友回復:
為什么不為此創建一個小的輔助實用程式功能:
function Format-Capacity ([double]$SizeInGB) {
$units = 'GB', 'TB', 'PB'
for ($i = 0; $SizeInGB -ge 1024 -and $i -lt $units.Count; $i ) {
$SizeInGB /= 1024
}
'{0:N2} {1}' -f $SizeInGB, $units[$i]
}
然后獲取格式化大小就像:
$datastoreCapacity = Format-Capacity $store.CapacityGB
$datastoreFree = Format-Capacity $store.FreeSpaceGB
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/327020.html
標籤:电源外壳
