2014-11-06 201 views
0

我有一個位於共享文件夾中的文件。我必須從本地PC執行該文件。該文件的名稱每天都在變化,因此我應該首先找到該名稱,然後執行該文件.exe在Windows批處理文件中執行命令

這裏是我的Batch

@echo off 

set FILE = 

FOR /F %%a IN ('dir /s/b') DO ( 
    set FILE=%%a 
) 

start %FILE% 

最後一行不執行該文件。這是爲什麼?

+1

把'echo'放在'start'之前,它應該變清楚了。另外,第一個'set'命令在'FILE'之後不應有空格。 – 2014-11-06 19:14:21

+0

那麼..仍然無法正常工作。我刪除了空間FILE ..無論如何..而不是真正的EXE執行它試圖執行%a。現在,代碼如下所示: 關閉@echo 集VADIR = \\ ABC \ Z^\工具\ AVUpdate \ REM PUSHD%VADIR% 集LOG = 「SuperDAT.log」 是否存在%LOG%( 德爾%LOG% ) 組FILE = FOR/F %%一個IN( 'DIR%VADIR %% FILE%/ S/b')DO( 集FILE = %%一個 ) 開始%VADIR %% FILE%/ F/silent REM popd 有人可能會建議如何執行.exe而不是命令的描述 – susja 2014-11-07 03:07:33

+0

對不起,我看不懂。您需要更新您的問題,並在每行代碼前使用4個空格,以便我們可以確切地看到您真正在做什麼。 – 2014-11-07 15:39:21

回答

0

它在路徑中是否有空格?

試試這個:

START "" "%FILE%" 

""標誌着一個空的窗口標題。當你引用文件名時,你必須指定一個標題,否則START將把你引用的文件路徑當作標題。

+0

現在全部設置,謝謝 – susja 2014-11-07 16:10:35