如何为PowerShell的Get-Service输出添加自定义计算列?
实现Get-Service输出添加「Name 2」计算列的正确方法
你之前的代码是根据服务StartType生成ServiceType列,和你要提取Status前3个字符的需求完全不相关,所以没得到预期结果。正确的做法是修改Select-Object中的计算属性参数:
# 获取指定服务 $services = Get-Service -Name BITS, appinfo # 添加计算列「Name 2」,提取Status列的前3个字符 $servicesWithComputedColumn = $services | Select-Object *, @{ Name = 'Name 2' Expression = { $_.Status.ToString().Substring(0, 3) } } # 显示结果 $servicesWithComputedColumn
关键说明:
Status是枚举类型(System.ServiceProcess.ServiceControllerStatus),必须先通过.ToString()转换为字符串,才能用.Substring(0,3)截取前3个字符- 直接把计算属性的
Name设为「Name 2」,Expression里编写字符提取逻辑即可
内容的提问来源于stack exchange,提问作者Rod
相关产品推荐
相关产品推荐

