如何在 powershell 中从文本文件中删除一行?

Don*_*son 5 powershell

突然我有种想终于进入powershell的冲动。现在我有办法导入文本文件、创建文本文件并添加到文件,但是有没有办法从文件中删除元素?例如,如果我有一个文本文件:

测试.txt

Quick
Brown
Fox
Run Code Online (Sandbox Code Playgroud)

我可以使用 $textFile = Get-Content -Path ".\test.txt" 导入文件

我可以打印每个元素并将它们添加到一个新文件中

foreach($line in $textFile)
{
    Write-Host $line
    Add-Content -Path ".\output.txt" -Value $line
}
Run Code Online (Sandbox Code Playgroud)

但是如何从文件中删除或移除元素(一行)呢test.txt?我在 google 上搜索了一个解决方案,但我只得到有人想要删除空行删除整个文件如何在 C# 中执行此操作的条件的结果。我认为它会像以前的命令一样直观。

感谢您的反馈!

Eug*_*ene 6

该线程为例,它通过保留不包含特定内容的行来删除行。

您可以通过保留不想删除的行来执行相同的操作。

Get-Content .\text.txt | Where-Object {$_ -notmatch 'the-word-in-specific-line'} | Set-Content out.txt
Run Code Online (Sandbox Code Playgroud)

因此,如果您想删除包含字符串的行Brown

Get-Content .\test.txt | Where-Object {$_ -notmatch 'Brown'} | Set-Content out.txt
Run Code Online (Sandbox Code Playgroud)