【发布时间】:2019-01-08 01:20:12
【问题描述】:
我在 Powershell 中有一个示例查询;
Get-AzureRmDisk -ResourceGroupName $resourceGroupName |
Format-Table -Property Name, Managed By
结果
Name : OsDisk_1_dfa60a
ManagedBy : /subscriptions/resourceGroups/Company/Microsoft.Compute/vms/Server1
由属性管理的输出太长。
我想将其缩短为最后一个 / 之后的字符(正斜杠)
预期结果
Name : OsDisk_1_dfa60a
ManagedBy : Server1
到目前为止,我已经尝试使用子字符串和 Last index of 来计算“/”的索引并从那里开始子字符串,然后以 ManagedBy 属性字符串的全长结束子字符串;
Get-AzureRmDisk -ResourceGroupName $resourceGroupName |
Format-List -Property Name,
ManagedBy.SubString(ManagedBy.LastIndexOf('/'),ManagedBy.length)
错误随之而来:ManagedBy.LastIndexOf :术语“ManagedBy.LastIndexOf”未被识别为 cmdlet、函数、脚本文件的名称,
解决方案
Get-AzureRmDisk -ResourceGroupName $resourceGroupName |
Format-Table -Property Name,
@{Name='ManagedBy';Expr={$_.ManagedBy.Split('/')[-1]}}
【问题讨论】:
标签: powershell