标题: [文本处理] 批处理删除ini文本指定第几行外的所有内容怎么写呀 [打印本页]
作者: ydm566 时间: 2012-3-16 01:44 标题: 批处理删除ini文本指定第几行外的所有内容怎么写呀
本帖最后由 ydm566 于 2012-3-16 03:38 编辑
删除当前目录1.ini文本里指定的几行内容以外的所有内容
asdsasd666
adwes444
adwfffgg66
adsdwfsdf
wqdsaf222
qwgdsfffdf
ghgfjghjhj
fdgfdgfdgfd
保留前三行,删除第三行以为的所有内容
作者: ivor 时间: 2012-3-16 03:00
本帖最后由 ivor 于 2012-3-16 12:33 编辑
- setlocal enabledelayedexpansion
- for /f "delims=" %%a in (1.ini) do (
- echo %%a & set /aa+=1
- if !a! equ 3 pause&exit
- )
复制代码
作者: ydm566 时间: 2012-3-16 03:12
楼上的这段不行呀,没反应
作者: 545810831 时间: 2012-3-16 06:06
- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%i in (1.ini) do (
- set /a m+=1
- if !m! leq 3 echo %%i
- )
- pause
复制代码
作者: ydm566 时间: 2012-3-16 13:03
还是不行呀,麻烦大侠测试下再发呀
作者: apang 时间: 2012-3-16 13:57
还是不行呀,麻烦大侠测试下再发呀
ydm566 发表于 2012-3-16 13:03
2楼和4楼的代码可以呀。
要输出到文件,你自己加重定向就行了。
作者: ydm566 时间: 2012-3-16 14:02
不要输出,我的意思就是删除ini里的指定几行以外的所有内容
作者: ydm566 时间: 2012-3-16 14:51
我只要删除当前文件夹里面INI指定几行以外的内容,有很多文件夹,如果输出的话,很麻烦。最好是能直接修改
作者: find 时间: 2012-3-16 18:54
回复 3# ydm566 - @echo off
- setlocal enabledelayedexpansion
- (for /f "delims=" %%a in (1.ini) do (
- echo,%%a
- set /a n+=1
- if !n! equ 3 (
- goto :eof
- )
- ))>1.ini.new
- move /y 1.ini.new 1.ini
复制代码
作者: ydm566 时间: 2012-3-16 20:39
谢谢9楼的朋友,这个可以
作者: find 时间: 2012-3-16 20:44
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |