Powershell,从txt文件和格式数据中读取(删除行,删除其间的空格)

use*_*332 4 powershell

我对powershell真的很新.我想使用powershell读取txt文件并将其更改为其他格式.

  1. 从txt文件中读取.
  2. 格式化数据(删除行,删除其间的空格)
  3. 记录数("T 000000002"9个字符)

然后将输出写入新文件.

我刚刚在两天前开始使用PowerShell,所以我还不知道该怎么做.

Joe*_*oey 8

  1. 从文件中读取:

    Get-Content file.txt
    
    Run Code Online (Sandbox Code Playgroud)
  2. 不太清楚你想要什么.Get-Content返回一个字符串数组.然后,您可以操纵所获得的内容并将其传递给它.这里最有用的cmdlet可能是Where-Object(用于过滤)和ForEach-Object(用于操作).

    例如,要删除所有可以执行的空白行

    Get-Content file.txt | Where-Object { $_ -ne '' } > file2.txt
    
    Run Code Online (Sandbox Code Playgroud)

    这可以缩短为

    Get-Content file.txt | Where-Object { $_ } > file2.txt
    
    Run Code Online (Sandbox Code Playgroud)

    因为布尔上下文中的空字符串求值为false.

    或者删除每行中的空格:

    Get-Content file.txt | ForEach-Object-Object { $_ -replace ' ' } > file2.txt
    
    Run Code Online (Sandbox Code Playgroud)
  3. 再一次,不太确定你在这之后是什么.我可以从你过于精细的描述中想到的可能的事情就是这样的

    $_.Substring(2).Length
    
    Run Code Online (Sandbox Code Playgroud)

    要么

    $_ -match '(\d+)' | Out-Null
    $Matches[1].Length
    
    Run Code Online (Sandbox Code Playgroud)