bat如何批量删除文本文件中只有空格而没有别内容的行

2025-03-23 04:22:40
推荐回答(2个)
回答1:

我想到的两行
代码一:
for /f "delims=" %%i in ('type "原文件.txt"') do echo %%i>>$ 2>nul
move $ 原文件.txt

上面我们团长那个更简单,只要一行
代码二:
findstr . 原文件.txt>$&move $ 原文件.txt

代码三:
哈哈,居然可以直接去空格

@echo off
findstr/vrc:"^[ ]*$" 原文件.txt>$
move $ 原文件.txt

TAB符肯定被百度吃了,末尾行还是去不掉
研究结束

回答2:

@echo off
(for /f "tokens=1* delims=:" %%a in ('findstr /n .* test.txt') do (
if "%%b"=="" ( echo. ) else (
for /f %%c in ("%%b") do echo.%%b
)
))>new.txt

将test.txt中纯空格(制表符)的行删除,其余行不变,结果写入文件new.txt