Board logo

标题: [文本处理] 【已解决】BAT:txt文本如何批量保留前几行数据 [打印本页]

作者: 思想之翼    时间: 2015-2-8 11:10     标题: 【已解决】BAT:txt文本如何批量保留前几行数据

本帖最后由 思想之翼 于 2015-2-11 21:09 编辑

D:/数据/内有若干txt文本,欲每个文本仅保留前24行数据,其余行的数据都删除,第25行为回车键,文本处理后保留原文件名。这样的批处理如何写?恳望得到帮助。
作者: yiwuyun    时间: 2015-2-8 12:29

sed -i.txt -n "1,24p" d:\数据\*.txt
作者: apang    时间: 2015-2-8 12:50

  1. @set @n=0;/* & echo off
  2. pushd "D:\数据\"
  3. for /f "delims=" %%a in ('dir /b *.txt') do (
  4.         cscript -nologo -e:jscript "%~0"<"%%a">$
  5.         move $ "%%a"
  6. )
  7. pause & exit/b & rem */
  8. ar = WScript.StdIn.ReadAll().split("\r\n");
  9. WScript.Echo(ar.slice(0,24).join("\r\n"))
复制代码

作者: apang    时间: 2015-2-8 12:57

  1. @echo off
  2. pushd "D:\数据\"
  3. for /f "delims=" %%a in ('dir /b *.txt') do (
  4.         set "n="
  5.         (for /f "usebackq delims=" %%b in ("%%a") do (
  6.                 set /a n+=1,"1/(n/25)" || echo,%%b
  7.         ))>$ 2>nul
  8.         move $ "%%a"
  9. )
  10. pause
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2