回复 6# taofan712
你这个代码可以这样优化:
1、获取文件行数和获取尾行内容,两个操作可以合并到一个for循环里面。
2、最后一个for循环里面直接输出变量的值,没有必要写成三行:
set line=%%e
echo;!line!
set /a n+=1- @echo off
- setlocal enabledelayedexpansion
- for /f "tokens=1* delims=:" %%a in ('findstr /n .* 1.txt') do (
- set "ln=%%a"
- set "last=%%b"
- )
- (for /f "tokens=1* delims=:" %%a in ('findstr /n .* 1.txt') do (
- if %%a neq %ln% (
- echo;%%b
- ) else (
- echo;!last:~0,-2!ba
- )
- ))>2.txt
复制代码
|