.bat程序搜索并查找特定的.exe文件,然后运行该文件一次

时间:2012-04-20 11:36:16

标签: batch-file

我想创建一个.bat文件,它可以帮助我在特定位置的文件夹中查找/搜索特定的.exe文件,然后运行该.exe文件。
e.g

  1. 在特定位置搜索文件,例如“\ G:\ data”,在这个黄金地段有很多文件夹,在那个文件夹中有很多子文件夹。并且.exe​​文件在其中一个子文件夹和我不知道的位置可用。只有我知道.exe文件的名称。
  2. bat文件需要搜索该文件然后运行该文件。
  3. 以下两个人无法找到并运行该文件 第一个项目

    pushd G:\data-a\test
    FOR /F "delims=" %F IN ('dir /S /b autorun.exe') DO SET ExePath="%F"
    %ExePath%e
    

    第二个节目

    for /r G:\data-a\test %a in (autorun.exe) do "%a"
    

    从上面两个不同的程序我把它放到记事本中创建两个不同的.bat文件并在anther文件后执行一个。但是无法找到并运行autorun.exe文件。

    仅举例来说我的autorun.exe文件的确切位置是

    G:\data-a\test\test1\t1 and G:\data-a\test\test1\t1
    

    但在G:\ data-a \ test位置可能有几个子文件夹。

    所以要逐个运行autorun.exe以查找子文件夹中的文件很困难。我想在程序中给出路径G:\ data-a \ test,所有文件都可以在子文件夹中找到,然后自动运行。

2 个答案:

答案 0 :(得分:1)

三个衬垫(如果包装在批处理文件中,则使用%% F)。

pushd G:\data
FOR /F "delims=" %F IN ('dir /S /b something.exe') DO SET ExePath="%F"
%ExePath%

答案 1 :(得分:1)

或命令提示符中的一个衬垫:

for /r g:\data %a in (filename.exe) do "%a"

在调用目录路径中包含空格的情况下使用了%a的引号