我有一个文本文件,其中包含以下内容,并带有一些不需要的行,这些行我想从文本文件中删除。
1233,pqry,01/11/2011
2365698,abcd,2011/01/12
,defghj,11/12/2013
,,,
,,,
,,,
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,我们可以看到有多行用逗号分隔。我想通过批处理文件从文本文件中删除这些行。请帮我
ren myFile.txt myFile.txt.old
findstr /v /b /c:",,," myFile.txt.old > myFile.txt
Run Code Online (Sandbox Code Playgroud)
将文件重命名为.old。在旧文件的行首找到所有不包含“,”的行,并将其保存到原始文件。
编辑-适应评论
如果要删除的行是仅带有逗号(我将包含空格)且没有其他值的行,则此行应该有效
for %%t in (c:\path\*.txt) do (
ren "%%~ft" "%%~nxt.old"
findstr /v /r /c:"^[, ]*$" "%%~ft.old" > "%%~ft"
)
Run Code Online (Sandbox Code Playgroud)
对于路径中的每个文件,将文件重命名为*.old,从该.old文件中提取所有不包含(/v)/r由模式(/c)定义的正则表达式()的行:“从行(^)的开头,后跟任意空格和逗号序列([, ]*)直到行($)的末尾”。提取的行将发送到原始文件名。
| 归档时间: |
|
| 查看次数: |
20357 次 |
| 最近记录: |