[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 ivor 于 2012-2-5 17:32 编辑

删除所有*.txt 第一行
  1. @echo off & setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in ('dir /s /b *.txt') do (
  3. set indicator=nul
  4. for /f "useback delims=" %%b in ("%%a") do (
  5. echo %%b
  6. set indicator=%%a~
  7. )>>"!indicator!"
  8. move "%%a~" "%%a"
  9. )
  10. pause
复制代码
再附上多功能版,列数如果大于4请修改:delCols代码块
功能1.指定删除的行数 2.指定删除的列数 3.同时指定行数和列数
  1. @echo off & setlocal enabledelayedexpansion
  2. set /p rows=请输入要删除的行:
  3. set /p cols=请输入要删除的列:
  4. if defined rows call :delRows %rows% & pause
  5. if defined cols call :delCols %cols% & pause
  6. goto :eof
  7. :delRows
  8. for /f "delims=" %%a in ('dir /s /b *.txt') do (
  9.         set count = %1
  10.         for /f "useback delims=" %%b in ("%%a") do (
  11.                 set /a count += 1
  12.                 if !count! neq %1 echo %%b >>"%%a~"
  13.         )
  14.         move "%%a~" "%%a"
  15. )
  16. echo 已经处理完了行数
  17. goto :eof
  18. :delCols
  19. for /f "delims=" %%a in ('dir /s /b *.txt') do (
  20.         for /f "useback tokens=1-4" %%b in ("%%a") do (
  21.                         set 1=%%b
  22.                         set 2=%%c
  23.                         set 3=%%d
  24.                         set 4=%%e
  25.                         set "%1="
  26.                         echo !1!        !2!        !3!        !4! >>"%%a~"
  27.                         
  28.         )
  29.         move "%%a~" "%%a"
  30. )
  31. echo 已经处理完了列数
  32. goto :eof
复制代码
2

评分人数

    • hacker85: 谢谢你的热心帮忙,今天才看到回复,回头我 ...技术 + 1
    • wh1234567: 新年快乐,技术超前,呵呵,不错技术 + 1

TOP

回复 4# wh1234567


    请说明具体问题

TOP

回复 6# wh1234567


   sorry to that....问题有些路径含有空格。在我win7下没试出来,因为桌面路径没有空格。
问题已修复

TOP

回复 12# wh1234567


    请问你是楼主吗?如果添加确认功能,势必会很繁琐的

TOP

回复  ivor


    你的第二段代码似乎没有删除行的功能呢?
我测试了好些次,都只能删除列,不能删除行 ...
hacker85 发表于 2012-2-5 16:55



    我测试好用啊,删除指定行可以,指定列也没啥问题啊,你哪运行的环境是什么情况。那个echo去掉了,没有多大实际意义。

TOP

不知道丫

TOP

返回列表