Get-Content拆分但保持前导零并且仅在powershell中按第一个'_'拆分

Ste*_*309 0 powershell text-parsing

我有一些像这样的txt数据:

0.0.0.1_03_1          
0.0.0.1_03            
0.0.0.1_02_2_1_3_4          
0.0.0.1_02_1          
0.0.0.1_02            
0.0.0.1_01_1          
0.0.0.1_01  
Run Code Online (Sandbox Code Playgroud)

我想要实现的是分离到两个变量(0.0.0.1和其余的)我只想通过第一个'_'分开并保持前导零(例如01)我喜欢:

Get-Content $SourceTxtDbFile | 
  ConvertFrom-String -Delimiter "_" -PropertyNames DbVersion, ScriptNumber
Run Code Online (Sandbox Code Playgroud)

但结果既没有前导零也没有按照我希望的方式分割线条.

Tes*_*ler 6

限制拆分数量,.Split($separator, $count)然后创建自己的输出对象:

Get-Content D:\test.txt | ForEach-Object {

    $Left, $Right = $_.split('_', 2)

    [PsCustomObject]@{ 
        DbVersion    = $Left.Trim()
        ScriptNumber = $Right.Trim()
    } 
}
Run Code Online (Sandbox Code Playgroud)