批处理文件很慢

时间:2015-10-16 09:12:32

标签: batch-file

@echo Off
setlocal enabledelayedexpansion

set webServer="\\serverweb01a\location"
set AppServer="\\serverapp01a\location"

echo checking file on App servers
echo ------------------------------------ >>log.txt
echo ************App Servers************* >>log.txt

Call:FindModifiedDateTimeApp %AppServer%

echo checking file on web servers
echo ------------------------------------ >>log.txt
echo ************Web Servers************* >>log.txt

Call:FindModifiedDateTimeWeb %webServer% 
set /p Done=Done... 
goto:eof


:FindModifiedDateTimeWeb

set c=0
for /f "tokens=*" %%i in (File_List.txt) do (
    set /a c+=1
    set sources[!c!]=%%i
)



for /r "%~1"  %%a in (*) do (
   for /F "tokens=2 delims==" %%s in ('set sources[') do (      
      if "%%~nxa"=="%%s" (
        echo %%~ta : %%~dpnxa  >>log.txt
        call:CheckOtherWebServers "%%~dpnxa" Serverweb01b
        call:CheckOtherWebServers "%%~dpnxa" Serverweb01d
    )

  )
)
goto:eof


:CheckOtherWebServers

 set server2=%~2
set Temps=%~1
set Temps=%Temps:Serverweb01a=!server2!%
for /f "delims=" %%f IN ("%Temps%") Do echo %%~tf : %%f >>log.txt
goto:eof

:FindModifiedDateTimeApp

set c=0

for /f "tokens=*" %%i in (Test.txt) do (
set /a c+=1
set sources[!c!]=%%i
)
for /r "%~1"  %%a in (*) do (
   for /F "tokens=2 delims==" %%s in ('set sources[') do (
        if "%%~nxa"=="%%s" (
          echo %%~ta : %%~dpnxa  >>log.txt
          call:CheckOtherAppServers "%%~dpnxa" ServerApp01b
          call:CheckOtherAppServers "%%~dpnxa" ServerApp01d
    )
 )
)
goto:eof

:CheckOtherAppServers

set server2=%~2
set Temps=%~1
set Temps=%Temps:ServerApp01a=!server2!%
for /f "delims=" %%f IN ("%Temps%") Do echo %%~tf : %%f >>log.txt
goto:eof

以上是我用来搜索“file_List.txt”文件中提到的某些文件并查找其上次修改时间的批处理。(可能有一个文件或多个文件) 我需要在3个Web服务器和3个app服务器上找到这些文件。所有Web服务器和应用服务器的文件位置都相同。 所以,我打算按照以下方式做到这一点:

在网络服务器serverweb01a上搜索。获取在\ serverweb01a \ location \ bin \ abc.dll中找到的文件说文件的位置。在location \ serverweb01b \ location \ bin \ abc.dll,然后在\ serverweb01d \ location \ bin \ abc.dll

中搜索文件

app server的类似步骤。

脚本工作得非常好,但速度有点慢。任何想法我怎样才能让它更快?

0 个答案:

没有答案