batch-file - 如何连续运行同一个exe文件N次?

标签 batch-file exe

我有一个exe文件。我想一次又一次地重复运行几次。我尝试了下面的批处理文件,但无法做到,有办法做到吗?抱歉,我是代码编写新手

@echo off  
start ran.exe
start ran.exe
start ran.exe

最佳答案

假设 ran.exe 在当前文件夹或您的路径中,那么您只需编写:

@echo off  
ran
ran
ran

调用它三次。如果在 PATH 上找不到它,则使用如下所示的完全限定名称:

@echo off  
c:\path\to\ran
c:\path\to\ran
c:\path\to\ran

运行程序是在批处理文件的一行上命名它的正常效果。

此外,由于 .EXE 列在 PATHEXT 环境变量中,因此您不需要在名称中包含它,除非还有一个文件名 ran.com,因为 .COMPATHEXT 的默认值中列于 .EXE 之前。

只有在批处理文件中才需要 START 内置命令来处理某些特殊情况。请参阅 START/?1 的输出以获取其文档。一般来说,您不仅仅需要它来启动程序。

更新:要将其概括为 N 次调用,请使用 FOR 命令。 FOR 功能极其强大,在命令提示符处输入 FOR/? 即可获取文档。对于指定为批处理文件参数的 N 次重复,并将当前计数作为其第一个参数传递给命令,请执行以下操作:

@echo off  
for /L %%N in (1,1,%1) do c:\path\to\ran %%N

使用 FOR 需要记住的棘手事情是,在批处理文件中迭代变量必须用两个百分号命名。帮助文本中提到了这一点,但只是顺便说一下。

更新 2:更多详细信息和解释。

在本例中,我们想要重复一个命令 N 次。 FOR 支持多种类型的循环,但获得精确 N 次迭代的最简单方法是使用其 /L 选项,该选项使用起始值、步长和定义迭代次数的结束值。 这些在括号中指定,如 FOR/L %%N (start,step,end)。为了获得 1 到 N 的简单计数器,我们告诉它从 1 开始,步长为 1,并在名为 %1 的批处理文件的第一个参数的值处停止。

批处理文件本身的参数被命名为 %1%9,并且 %* 命名所有参数。请注意,这里存在一个与正确引用包含空格的文件名相关的巨大微妙雷区。为了让生活变得简单,请努力避免这样做。否则,CALL/? 记录命令行参数约定,SET/? 记录许多与一般批处理文件变量相关的内容。

其他形式的 FOR 让您可以迭代文件(无选项)、目录 (/D)、在树中递归地目录 (/R),或文件内容的各个部分(/F)。

关于batch-file - 如何连续运行同一个exe文件N次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20058624/

相关文章:

python - 在 Windows 上从 Python 脚本中终止由批处理文件启动的外部进程

windows - 文件重定向中出现杂散换行符

c# - 如何在 .exe 文件中包含音乐?

Python、PyInstaller 错误 : no module named "Encodings" and system codec missing

batch-file - 如何在 QBasic 中运行批处理文件?

windows - 我怎样才能使批处理文件像使用 Perl 的简单 grep 一样运行?

windows - 将包含可执行文件的文件夹制作成可执行文件

c# - 在 EXE 中嵌入外部 DLL

exe - 我如何将fla转换为exe?

string - 2 批字符串问题