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

[文本处理] 新手求教怎么能用批处删除文件内指定的内容

[复制链接]
发表于 2012-7-21 12:59:45 | 显示全部楼层 |阅读模式
我想删除TetsYYVop=后面的所有内容,其他的内容保持不变。TetsYYVop=后面的内容有时会变。
文件在   D:\办公\.1txt
发表于 2012-7-21 13:34:28 | 显示全部楼层
第三方 sed:
  1. sed "s/^\(TetsYYVop=\).*/\1/" 1.txt
复制代码
 楼主| 发表于 2012-7-21 13:44:04 | 显示全部楼层
回复 2# CrLf


    不想用第3方软件。弄不懂。
发表于 2012-7-21 13:51:21 | 显示全部楼层
本帖最后由 CrLf 于 2012-7-21 15:03 编辑
  1. @echo off
  2. (for /f "tokens=1* delims==" %%a in (1.txt) do (
  3.    if %%a==TetsYYVop (echo %%a) else echo %%a=%%b
  4. ))>$
  5. move /y $ 1.txt
复制代码
 楼主| 发表于 2012-7-21 14:28:45 | 显示全部楼层
回复 4# CrLf


    为什么我测试下了把所有内容都删除了,只留了最后一行内容。
发表于 2012-7-21 14:31:13 | 显示全部楼层
回复 5# hdhyg


    漏了一对括号,已修改
 楼主| 发表于 2012-7-21 14:59:10 | 显示全部楼层
回复 6# CrLf


    还是不能删除,在每行后都加一个=不知为什么。

刚学bat的新手。
发表于 2012-7-21 15:03:40 | 显示全部楼层
回复 7# hdhyg


    又漏一个 "=",已修改...
 楼主| 发表于 2012-7-21 15:15:24 | 显示全部楼层
本帖最后由 hdhyg 于 2012-7-21 15:17 编辑

回复 8# CrLf


    这样是能删除了,但有个2问题,1.把TetsYYVop=后面的包括=号都删删除了,我只要删除TetsYYVop=后面的内容,=号不能删。。。。2.在没有=号的,比如1行3行后面都会加一个等号。
发表于 2012-7-21 15:18:18 | 显示全部楼层
本帖最后由 CrLf 于 2012-7-21 15:22 编辑

回复 9# hdhyg
  1. @echo off
  2. (for /f "delims=" %%a in (1.txt) do (
  3.    for /f "tokens=1* delims==" %%b in ("%%a") do (
  4.       if %%b==TetsYYVop (
  5.          echo %%b=
  6.       ) else (
  7.          if "%%c"=="" (echo %%a) else echo %%b=%%c
  8.       )
  9.    )
  10. ))>$
  11. move /y $ 1.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
hdhyg + 1 高手

查看全部评分

 楼主| 发表于 2012-7-21 15:29:24 | 显示全部楼层
回复 10# CrLf


    谢谢谢谢。终于可以完美的删除了!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 04:12 , Processed in 0.007685 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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