通过批处理删除文本文件中的行

时间:2017-03-17 20:27:33

标签: batch-file text

我正在寻找一个可以删除文本文件中的行的批处理命令

John Doe has joined chat
Bob has joined chat
John Doe has left chat

而不是像那样,它会像:

在:

John Doe has joined chat
Bob has joined chat

后:

Bob has joined chat
John Doe has left chat

它将删除" John Doe已加入聊天"部分只有留言。这将清理文本文件并防止它变得太大。它可能像:

remline if include %USERNAME%
echo %USERNAME% has left chat >> users.dat

但" remline"据我所知,这不是一个命令。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

... | Out-File -Encoding UTF8 $newPreferencePath

应该根据需要删除该行。 findstr /v /b /L /c:"%username% " users.dat>tempfile.dat move /y tempfile.dat users.dat >nul 会在findstr字符/v字符/b的开头找到/L没有/c:"..."的所有行包含此字符串。

请注意,要删除的字符串我故意添加了一个空格。这意味着,如果您有用户FredFred Two,则删除Fred不会影响Fred Two记录。