Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将运行可执行文件的Windows批处理放在一起,我只知道部分名称?_Windows_Batch File_Autocomplete_Cmd_Switch Statement - Fatal编程技术网

将运行可执行文件的Windows批处理放在一起,我只知道部分名称?

将运行可执行文件的Windows批处理放在一起,我只知道部分名称?,windows,batch-file,autocomplete,cmd,switch-statement,Windows,Batch File,Autocomplete,Cmd,Switch Statement,最后,我需要在客户端计算机上运行一个安装程序可执行文件,该计算机需要一个/S开关进行静默安装。但我只知道设置名称的开头部分。我们将最新版本保存在一个不变的目录(C:\WFRuntimes)中,但安装程序版本包含在安装程序文件名的末尾。所以我知道它是以“Runtimes\u v”开头的。。。但它之后是我们推出的任何版本。所有版本都有a/S开关,允许静默自动安装,这也需要包括在内。我知道有一个漂亮的标签功能自动完成,太糟糕了,这不能作为一个命令键入 顺便说一下,你们太棒了 根据您的具体环境,这里有一

最后,我需要在客户端计算机上运行一个安装程序可执行文件,该计算机需要一个/S开关进行静默安装。但我只知道设置名称的开头部分。我们将最新版本保存在一个不变的目录(C:\WFRuntimes)中,但安装程序版本包含在安装程序文件名的末尾。所以我知道它是以“Runtimes\u v”开头的。。。但它之后是我们推出的任何版本。所有版本都有a/S开关,允许静默自动安装,这也需要包括在内。我知道有一个漂亮的标签功能自动完成,太糟糕了,这不能作为一个命令键入


顺便说一下,你们太棒了

根据您的具体环境,这里有一种可能有效,也可能无效的黑客方法:

for /f %%i in ('dir /b Runtimes_v*.exe') do echo %%i /S > temp_runtimes_v.cmd
call temp_runtimes_v.cmd
如果从命令行(不是批处理文件)以交互方式使用此选项,请将%%替换为%

编辑:这可能在没有临时文件的情况下实现:

for /f %%i in ('dir /b Runtimes_v*.exe') do cmd /c %%i /S

我试着使用%%或&&的每一个变体,我认为有,但我知道我很接近,并且有正确的想法。可能是非常简单的事情。。。我总是在Win7中,但是用户从XP到Win7都在。我在Win 7测试环境中尝试了上述命令,但无效:(如果直接从命令行使用,您是否将%%更改为%?除此之外,这假定本地目录中只存在一个运行时\u v*.exe文件。Paul,您能给我一个确切的示例说明您的意思吗?如果您直接在命令行上键入该命令,您必须将%%替换为%。即:for/f%i在('dir/b Runtimes_v*.exe')中,cmd/c%i/i认为可能是这样做的。它似乎在本地目录下工作,但我忘了提及(我认为这不会是一个问题)安装文件在他们的服务器上。所以我在其中输入了/set p=开关,它会询问服务器名称等。但问题是,您无法浏览UNC路径。所以我尝试将文件夹映射到V:,转到V:目录,然后运行该命令。这会导致cmd.exe崩溃,所以我甚至不确定它为什么不喜欢它,但它可能有问题需要解决哦,这是一个地图驱动器。啊。一天中大部分时间都在这里。我该睡觉了。非常感谢你的帮助