手机
当前位置:查字典教程网 >脚本专栏 >DOS/BAT >显示只有指定个数字符的行
显示只有指定个数字符的行
摘要:复制代码代码如下:@echooffgotobegin参数1:文本文件名参数2:要显示的行的字符数(可省)例如要打印a.txt中的字符数为4的...

复制代码 代码如下:

@echo off

goto begin

参数1:文本文件名

参数2:要显示的行的字符数(可省)

例如要打印a.txt中的字符数为4的行:

print.bat a.txt 4

或者直接把要处理的文件拖放到脚本文件上,然后按提示操作。

效率非常高

:begin

setlocal ENABLEDELAYEDEXPANSION

set var=%2

if "%var%" == "" set /p var=输入要显示的行的字符数:

for /l %%i in (1,1,%var%) do set str=!str!.

findstr /x %str% %1

pause>nul

goto :eof

@echo off

:: 显示只有4个字符的文本行

:: test.txt中只有纯字母,无空格,无空行

:: 因为是全文解析,所以效率低下

:: code by jm 2006-8-14

for /f %%i in (test.txt) do (

set str=%%i

set var=%%i

call :loop

set num=0

)

pause

goto :eof

:loop

set var=%var:~0,-1%&& set /a num+=1

if not "%var%"=="" goto loop

if %num% equ 4 echo %str%

goto :eof

@echo off

:: 通过首尾插入字符来判断,效率较高

:: 适合行中带空格的情况

:: 如果不插入字符,只判断第5位的字符情况,会出错

:: code by 3742668

setlocal ENABLEDELAYEDEXPANSION

for /f "delims=" %%i in (test.txt) do (

set str=b%%ie

if not "!str:~5,1!" == "" if "!str:~6,1!" == "" echo. %%i

)

pause

goto :eof

【显示只有指定个数字符的行】相关文章:

批处理bat删除指定天数日期之前的文件

批处理生成几乎任何字符,包括Tab

再谈DOS批处理下格式化日期字符串的三种方法(详解)

实现每个星期的每一天指定时间关机的dos/bat

改变cmd命令提示符颜色的3个小技巧

用批处理得到每个目录占用的空间

DOS批处理 函数定义与用法

bat过滤任意字符

批处理去除指定字符前所有的0的代码

Compact 显示和更改 NTFS 分区上的文件或目录压缩

精品推荐
分类导航