本帖最后由 Dana 于 2011-10-17 09:09 编辑
下面的代码是将一个文件按照行数提取后生成新的文件, 并且将原文件覆盖, 但是代码一次只能完成一个文件的修改, 如何能批量修改一个文件夹下的所有txt文件, (更新内容并且覆盖原文件), 多谢! sed 处理后的数据文件在Win 下程序不能正常读取相关内容. 请大家帮忙修改下面的代码, 使之可以批量处理数据. 谢谢!- :: 保留文本中的前 N 行(覆盖原文件) .
- @echo off
- :: -------- 设置 --------
- set File="1.TXT"
- set N=18
- :: -------- /设置 --------
- if not exist %File% exit
- if not defined N exit
- findstr /n .* %File% > "%temp%\tmp"
- (
- for /f "usebackq delims=" %%a in ("%temp%\tmp") do (
- set Var=%%a
- set /a Line = Var
- SetLocal EnableDelayedExpansion
- if !Line! leq !N! echo,!Var:*:=!
- EndLocal
- )
- ) > %File%
- del "%temp%\tmp"
复制代码 |