将.bat文件限制为txt文件中的仅200行

时间:2013-04-26 23:12:17

标签: batch-file

我有这个.bat文件,我想在gmname.txt中将它限制为只有200行。基本上,当为每一行运行这个.bat文件时,假设我在gnmname.txt中有300行我想启动UpMe.bat只有200.我知道这应该很简单,但任何帮助都是值得赞赏的。

for /f "tokens=1" %%k in (gmname.txt) do start /MIN UpMe.bat %%k

4 个答案:

答案 0 :(得分:1)

如果我理解你想处理一个文本文件的X行数量的命令?那么这里是代码:

@Echo off
Setlocal enabledelayedexpansion

Set /A "Limit=200"

for /F "Usebackq tokens=1" %%k in (
    "gmname.txt"
) do (
    Set /A "Line+=1"
    If !LINE! LEQ !LIMIT! (start /MIN UpMe.bat %%k)
)

Pause&Exit

答案 1 :(得分:0)

http://ss64.com/nt/for.html显示了如何为输入文件的每一行运行代码块

SET count=1
 for /f "tokens=1" %%k in (gmname.txt) do (
 echo %count% : %%k
 set /a count+=1 )

您可以使用这种方法并在count达到200以上时调整它以退出批处理文件

如果失败了,你可以调用子程序而不是使用代码块,这个链接显示了如何 http://ss64.com/nt/call.html

答案 2 :(得分:0)

试试这个:

for /f "tokens=1*delims=:" %%k in ('findstr /n $ gmname.txt') do if %%k leq 200 start /MIN UpMe.bat %%l

gmname.txt中不应有空行。

答案 3 :(得分:0)

如果“gmname.txt”超过200行,则应启动upme.bat。

@echo off
for /f %%a in ('find /c /v "" ^< "gmname.txt" ') do if %%a GTR 200 call upme.bat