2024-11-05 01:46:06
注意先备份文件,问题一的批处理:
@echo off
setlocal enabledelayedexpansion
set /a m=5
for %%a in (*.txt) do (
for /f "usebackq delims=" %%i in ("%%~a") do (
set /a n+=1
if !n! leq !m! (echo %%i>>"新的TXT.txt") else (echo %%i>>"%%~na.new"))
copy "%%~na.new" "%%~a" & del "%%~na.new")
问题二:
@echo off
setlocal enabledelayedexpansion
for /f "usebackq delims=" %%i in ("1.txt") do (set /a n+=1 & set "s!n!=%%i")
for /f "usebackq delims=" %%i in ("2.txt") do (set /a m+=1 & set "s!m!=%%i")
if !n! leq !m! (
for /l %%i in (1,1,!n!) do (echo !%n%%%i!!%m%%%i!)) else (
for /l %%i in (1,1,!m!) do (echo !%n%%%i!!%m%%%i!)))>"新的TXT.txt"
时间有限,能帮你的就这些了。
问题一代码用不了 提取出来的文本只有4行。提示ECHO 处于关闭状态。
问题一:
@echo off
setlocal enabledelayedexpansion
set /a m=5
for %%a in (*.txt) do (
for /f "usebackq delims=" %%i in ("%%~a") do (
set /a n+=1
if !n! gtr !m! (echo %%i>>"新的TXT.txt") else (echo %%i>>"%%~na.new"))
copy "%%~na.new" "%%~a" & del "%%~na.new")
问题二:
@echo off
setlocal enabledelayedexpansion
for /f "usebackq delims=" %%i in ("1.txt") do (set /a n+=1 & set "s!n!=%%i")
for /f "usebackq delims=" %%i in ("2.txt") do (set /a m+=1 & set "s!m!=%%i")
if !n! leq !m! (
for /l %%i in (1,1,!n!) do (echo !%n%%%i!!%m%%%i!)) else (
for /l %%i in (1,1,!m!) do (echo !%n%%%i!!%m%%%i!))>"新的TXT.txt"
有些改动。
问题一,提取是提取出来了,但发现,cmd窗口会提示,系统找不到文件!!!提取后的文本文件,有的 提取过后会删除那些行,有的 提取过后 还是一直保存!提取第二次就提取不动了!
不好意思,代码是理论上的,具体还要看你的文本内容,最近忙,无法帮你了。