拆分字符串和数字,每个拆分具有唯一 ID
Split string and number each split with unique ID
如何用逗号拆分字符串并 return 每个拆分的编号实例?例如下面的代码
$SourceDir = "D:\SQLServer2016\BackupOne,D:\SQLServer2016\BackupTwo"
$SourceDir -split ','
Returns
D:\SQLServer2016\BackupOne
D:\SQLServer2016\BackupTwo
我也想 return 例如每个字符串的编号实例
D:\SQLServer2016\BackupOne,1
D:\SQLServer2016\BackupTwo,2
这可能吗?
一个简单的方法是创建一个 PSObject
$SourceDir = "D:\SQLServer2016\BackupOne,D:\SQLServer2016\BackupTwo"
$SplitDir = $SourceDir -split ','
$index = 0
$Backups = @()
foreach($dir in $SplitDir)
{
$index ++
$Object = New-Object PSObject -Property @{
Directory = $dir
BackupNumber = $index
}
$Backups += $Object
}
$Backups
听起来你解决了错误的问题,但这里有一个方法。:
$SourceDir = "D:\SQLServer2016\BackupOne,D:\SQLServer2016\BackupTwo"
$i = 1
$SourceDir -split ',' | %{'{0},{1}' -f $_, $i; $i++}
如何用逗号拆分字符串并 return 每个拆分的编号实例?例如下面的代码
$SourceDir = "D:\SQLServer2016\BackupOne,D:\SQLServer2016\BackupTwo"
$SourceDir -split ','
Returns
D:\SQLServer2016\BackupOne D:\SQLServer2016\BackupTwo
我也想 return 例如每个字符串的编号实例
D:\SQLServer2016\BackupOne,1 D:\SQLServer2016\BackupTwo,2
这可能吗?
一个简单的方法是创建一个 PSObject
$SourceDir = "D:\SQLServer2016\BackupOne,D:\SQLServer2016\BackupTwo"
$SplitDir = $SourceDir -split ','
$index = 0
$Backups = @()
foreach($dir in $SplitDir)
{
$index ++
$Object = New-Object PSObject -Property @{
Directory = $dir
BackupNumber = $index
}
$Backups += $Object
}
$Backups
听起来你解决了错误的问题,但这里有一个方法。:
$SourceDir = "D:\SQLServer2016\BackupOne,D:\SQLServer2016\BackupTwo"
$i = 1
$SourceDir -split ',' | %{'{0},{1}' -f $_, $i; $i++}