找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 30845|回复: 9

[文件操作] [已解决]批处理怎样删除一个文本的某一行?

[复制链接]
发表于 2011-9-29 19:49:25 | 显示全部楼层 |阅读模式
本帖最后由 garyng 于 2011-9-29 22:25 编辑

有个文件
没有任何特殊字符但有空格数量不定

能不能
根据用户的输入
删除/去除文本的其中一行

例如:
a.txt中:
  1. aswehgt235 dkgjb asdglokih h
  2. wegtqwet2 235 edegwe24
  3. asdrghjbg 2asfg wet wregefrh
  4. etqwetkjb qwetoihqewtn qwet
  5. qwetoihwerg qwetkonwqet
  6. 2359087234 32456jmjm2346
  7. 324698713246nnnefg
  8. 2134897346
  9. sarg
  10. dasfg
复制代码
用户输入删除第
也就是:
  1. etqwetkjb qwetoihqewtn qwet
复制代码
删除第四行后
文件a.txt变成:
  1. aswehgt235 dkgjb asdglokih h
  2. wegtqwet2 235 edegwe24
  3. asdrghjbg 2asfg wet wregefrh
  4. qwetoihwerg qwetkonwqet
  5. 2359087234 32456jmjm2346
  6. 324698713246nnnefg
  7. 2134897346
  8. sarg
  9. dasfg
复制代码
就是这样~

帮帮忙~

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2011-9-29 20:55:22 | 显示全部楼层

  1. @Echo Off
  2. Set /P Num=请输入要删除的行:
  3. (For /F "tokens=1* delims=:" %%a In ('Findstr /n .* a.txt') Do If %Num% NEQ %%a Echo %%b)>$
  4. Move $ a.txt
  5. Start a.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
garyng + 1 好!

查看全部评分

发表于 2011-9-29 21:00:04 | 显示全部楼层
  1. @echo off
  2. set n=4
  3. (for /f "tokens=1,* delims=:" %%i in ('findstr /n ".*" a.txt') do if not %%i equ %n% echo.%%j)>b.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
garyng + 1 不赖~

查看全部评分

发表于 2011-9-29 22:07:37 | 显示全部楼层
  1. @echo off
  2. set /p n=删除哪一行?
  3. sed -i "%n%d" a.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
garyng + 1 OK~

查看全部评分

 楼主| 发表于 2011-9-29 22:18:29 | 显示全部楼层
回复 4# awk


   发现awk爱用sed~
 楼主| 发表于 2011-9-29 22:25:39 | 显示全部楼层
各位的答案都不错!
发表于 2011-9-29 22:41:11 | 显示全部楼层
  1. @echo off
  2. set n=4
  3. gawk "NR != %n%" a.txt
  4. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

发表于 2011-9-29 22:50:19 | 显示全部楼层
回复 5# garyng


其实更爱awk
 楼主| 发表于 2011-9-30 10:49:36 | 显示全部楼层
回复 8# awk


   哈哈~sed哪里下啊?
   还有楼上上的gawk哪里下?
发表于 2011-9-30 12:01:11 | 显示全部楼层
回复 9# garyng


    论坛的 第三方命令行 版块
  http://bbs.bathome.net/thread-3981-1-1.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 03:25 , Processed in 0.021308 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表