手机
当前位置:查字典教程网 >脚本专栏 >DOS/BAT >查找偶数行内容的批处理
查找偶数行内容的批处理
摘要:复制代码代码如下:@echooff::查找偶数行内容::setn=0for/f"delims="%%iin(test.txt)doset/a...

复制代码 代码如下:

@echo off

:: 查找偶数行内容

::

set n=0

for /f "delims=" %%i in (test.txt) do set /a n+=1

for /l %%i in (1,2,%n%) do (

findstr /n "." test.txt|findstr /r "^%%i:">>tmp.txt

)

for /f "tokens=1* delims=:" %%i in (tmp.txt) do echo %%j>>end.txt

del tmp.txt

start end.txt

goto :eof

另一种方案

:: 不产生临时文件,并且速度要快得多

:: findstr中如果用.*,则在空行的位置会显示"ECHO 处于关闭状态。";

:: 如果用.,则不会打印空行

:: code by jm CMD@XP 2006-7-29

@echo off

cd.>result.txt

setlocal enabledelayedexpansion

for /f "tokens=1* delims=:" %%i in ('findstr /n "." test.txt') do (

set num=%%i

call :mod

if !mod! equ 0 echo %%j>>result.txt

)

start result.txt

goto :eof

:mod

set /a mod=%num%%%2

goto :eof

把上一段代码稍加改造,就可以去掉文本中的空行

@echo off

cd.>tmp.txt

for /f "tokens=1* delims=:" %%i in ('findstr /n "." test.txt') do (echo %%j>>tmp.txt)

cd.>result.txt

:: 当文本中的空行是其他未知代码时(从网页中复制过来会出现这种情况),

:: 会在空行处显示"ECHO 处于关闭状态。",以下代码是删除这行内容

findstr /v "<ECHO 处于关闭状态。>" tmp.txt>>result.txt

del /q tmp.txt

【查找偶数行内容的批处理】相关文章:

去掉字符串头所有的0的批处理

DOS自带的批处理命令

检查网络信息的bat[批处理]文件

拼接相临的奇偶行文本内容

最强的用批处理编写的病毒

收藏的比较完整的批处理教程第1/2页

为cmd设置密码的批处理

查找最新的文件的批处理bat文件

写的不错批处理教程一

实现百度关键字搜索的批处理

精品推荐
分类导航