我正在尝试将百分号(“%”)添加到变量后:

$disk = Get-WmiObject -ComputerName $Computer -Class Win32_LogicalDisk -Filter  "Caption = 'D:'"
If (!($disk)) {
   $DiskpercentFree = "n/a"
}
Else {
   $deviceID = $disk.DeviceID
   [float]$size = $disk.Size;
   [float]$freespace = $disk.FreeSpace;
   $diskpercentFree1 = [Math]::Round(($freespace / $size) * 100)
   $Percent = "%"
   $diskpercentFree = $diskpercentFree1 + $Percent
}

但是我得到的是:



大概是因为它认为“+”运算符正在进行计算吗?我尝试了各种concat选项,但似乎无法正确执行。有人可以帮忙吗?

最佳答案

说明:
在输出周围添加" "以将其视为字符串,然后将变量附加到末尾。这意味着您可以将其从%切换到诸如Percent Remaining的字符串。
希望这会有所帮助,您很亲密!
代码:

   $disk = Get-WmiObject -ComputerName $Computer -Class Win32_LogicalDisk -Filter  "Caption = 'D:'"
              If (!($disk)) {
                 $DiskpercentFree = "n/a"
                }
              Else {
                 $deviceID = $disk.DeviceID
                 [float]$size = $disk.Size;
                 [float]$freespace = $disk.FreeSpace;
                 $diskpercentFree1 = [Math]::Round(($freespace / $size) * 100)
                 $Percent = '%'
                 $diskpercentFree = "$diskpercentFree1" + $Percent
                 }
的结果示例:

关于powershell - Powershell:将百分号附加到变量的末尾,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46806701/

10-13 06:08