相关疑难解决方法(0)

如果文本文件包含字符串,则使用PowerShell从文本文件中删除行

我试图使用下面的PowerShell代码从包含部分字符串的文本文件中删除所有行:

 Get-Content C:\new\temp_*.txt | Select-String -pattern "H|159" -notmatch | Out-File C:\new\newfile.txt
Run Code Online (Sandbox Code Playgroud)

实际的字符串是H|159|28-05-2005|508|xxx,它在文件中重复多次,我试图只匹配上面指定的第一部分.那是对的吗?目前我的输出是空的.

我错过了什么吗?

powershell powershell-2.0 powershell-3.0

26
推荐指数
4
解决办法
8万
查看次数

如何在 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# 中执行此操作的条件的结果。我认为它会像以前的命令一样直观。

感谢您的反馈!

powershell

5
推荐指数
1
解决办法
9538
查看次数