2017-08-30 30 views
2

我有一個批處理文件,它可以檢索目錄中的文件,但只能在一個文件夾中並通過聲明確切的文件夾。如何將我的批處理文件更改爲動態文件,以便可以檢索subfolders中的特定文件。如何在沒有使用批處理文件逐一聲明的情況下檢索具有多個子文件夾的目錄中的文件?

我在我的批處理文件中聲明瞭這行代碼,該文件指定了應該檢索文件的文件夾。

呼叫FTPDownload("SERVER","USERNAME","PASSWORD","D:dir1/dir2/dir3/",fyldt_currentday)

我怎樣才能檢索中的文件全部dir3subfolders未聲明的一個接一個?

回答

3

你可以簡單地得到當前目錄的字符長度,並從絕對列表中刪除

setlocal EnableDelayedExpansion 
for /L %%n in (1 1 500) do if "!__cd__:~%%n,1!" neq "" set /a "len=%%n+1" 
setlocal DisableDelayedExpansion 
for /r . %%g in (*.log) do (
    set "absPath=%%g" 
    setlocal EnableDelayedExpansion 
    set "relPath=!absPath:~%len%!" 
    echo(!relPath! 
    endlocal 
) 
相關問題