我有这个.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
答案 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