在本指南中,一些属性Get-CimInstance -ClassName Win32_Battery
从值转换int
为(更具解释性的)字符串值。
在属性的示例中,映射按如下方式执行BatteryStatus
:
Update-TypeData -MemberName BatteryStatus -TypeName "Microsoft.Management.Infrastructure.CimInstance#root/cimv2/win32_battery" -MemberType ScriptProperty -Value {
Enum EnumBatteryStatus
{
Battery_Power = 1
AC_Power = 2
Fully_Charged = 3
Low = 4
Critical = 5
Charging = 6
Charging_and_High = 7
Charging_and_Low = 8
Charging_and_Critical = 9
Undefined = 10
Partially_Charged = 11
}
[EnumBatteryStatus]($this.PSBase.CimInstanceProperties['BatteryStatus'].Value)
} -Force
还指出
每个 PowerShell 会话只需执行一次此命令。
我只想在必要时运行它们,也就是说:仅当在当前会话中它们尚未运行时。
但是如何识别当前会话?有可用的ID吗?我找到的唯一信息与有关Get-PSSession
,但是(因为我在本地机器上,而不是在远程机器上)在我的情况下,它的输出为空。
我正在使用 PowerShell 7.5。