Batch file 如何使用通配符确定exe文件的名称并在cmd/batch文件中执行该文件
我有一个构建应用程序的项目,每当它构建应用程序时,它生成的名称类似于MyApp1.1.exe、MyApp1.2.exe、myApp、1.3.exe等。每当有新的构建时,我想在另一个环境中部署应用程序。但问题是我在批处理脚本中使用了下面的in命令,这是一个错误Batch file 如何使用通配符确定exe文件的名称并在cmd/batch文件中执行该文件,batch-file,cmd,Batch File,Cmd,我有一个构建应用程序的项目,每当它构建应用程序时,它生成的名称类似于MyApp1.1.exe、MyApp1.2.exe、myApp、1.3.exe等。每当有新的构建时,我想在另一个环境中部署应用程序。但问题是我在批处理脚本中使用了下面的in命令,这是一个错误 MyApp1.*.exe 但它总是在命令行中抛出一个错误,指出“MyApp1.*.exe”无法识别为内部或外部命令、可操作程序或批处理文件。我知道这应该很简单,但我似乎找不到任何解决方案,它用于运行批处理文件,要求您运行for循环来为每个
MyApp1.*.exe
但它总是在命令行中抛出一个错误,指出“MyApp1.*.exe”无法识别为内部或外部命令、可操作程序或批处理文件。我知道这应该很简单,但我似乎找不到任何解决方案,它用于运行批处理文件,要求您运行
for
循环来为每个项目执行。因此,您需要为
提供一些条件,它将根据这些条件返回列表。然后,您可以使用这些元变量执行操作
@echo off
for %%i in (MyApp*.*.exe) do echo start "" "%%~i"
在本演示中,我并没有实际运行exe
cutable,而是echo
full命令。如果您觉得它适合于此目的,那么simpy从echo start”“…
部分删除echo
。在创建MyApp.a.b.exe
的同时,也创建一个仅运行此新创建版本的MyApp.latest.bat
。您不能使用*通配符选择单个文件。您将需要使用批处理脚本和for循环,类似于此()。不,您不能这样做。在cmd
do中,在(MyApp*.exe)中为%i启动“%~i”
。从批处理文件使用时,请双击%
。您在书中或网上找到哪些说明可以在批处理文件中使用该语法的文档?想知道我自己的文件目的。@Gerhard谢谢。这确实奏效了:)谢谢你,格哈德。它确实起作用了。是的,它应该起作用,这就是为什么我发布了答案:)