2012-02-16 148 views
0

問題是它正在調用原始beamthemup2.bat文件,而不是複製的文件。複製另一個文件夾後運行錯誤的批處理文件

@ECHO OFF 
for /d %%X in (*) do (
    copy "beamthemup2.bat" "%%X" 
    @echo "%%X\beamthemup2.bat" 
    pause 
    call "%%X\beamthemup2.bat" 
) 

UPDATE

這是第二個bat文件。它似乎是複製並運行正確的批處理文件。雖然這是問題。當首次運行上述批處理文件時,%cd%返回第一個批處理文件的路徑,但是如果我自己在要複製的文件夾中運行第二個文件夾,%cd%將返回正確的文件夾。

@ECHO OFF 
for /r %%X in (*) do (

    "c:\Program Files\7-Zip\7z.exe" a -tzip "%cd%" "%%X" 
    @ECHO %cd% 
    pause 

) 

回答

3

您當前的工作目錄仍然是您啓動第一個批處理文件的目錄。運行第二個批處理文件不會更改工作目錄。

嘗試將cd %~dp0添加到第二批文件(在@ECHO OFF之後)。這將光盤到批處理文件所在的目錄。

+0

這很好,謝謝你的幫助:) – bounce 2012-02-16 11:41:57

+1

太棒了!請在適當的地方標記答案。謝謝。 – Nomad101 2012-02-16 12:14:47