remoteexecute.bat
来源:互联网 发布:win10如何打开23端口 编辑:程序博客网 时间:2024/06/07 05:16
@echo offset LocalPath=%~dp0cd /d "%LocalPath%":: 1. Packages distribution:: 2. Remote execute batch:: %%a - tokens[1]:: %%b - tokens[2]:: %%c - tokens[3]for /f "tokens=1,2,3 delims=, " %%a in (config.txt) do (echo PRESS ANY KEY TO DEPLOY NEXT SERVER... & pause > nulecho deploy %%a...call:DistributePackage %%a %%bcall:remoteexecute_single %%a %%b %%c)echo.&goto:eof:DistributePackage -- Distribute package to specific path:: -- %~1: ServerName:: -- %~2: BatPath:: Starting logsif not exist Log (mkdir Log)set LOGFILE=Log\%~1.logecho Start at %DATE%%TIME% >>%LOGFILE% 2>&1echo Log is ready >>%LOGFILE% 2>&1echo ********************************************************************>>%LOGFILE% 2>&1 echo **** Start Scripts **************** >>%LOGFILE% 2>&1echo ******************************************************************** >>%LOGFILE% 2>&1if "%~1" equ "localhost" (goto:eof)set "RPath=%~2"set "RPath=%RPath::=$%"xcopy Package \\%~1\%RPath% /i /e /y /r>>%LOGFILE% 2>&1goto:eof:remoteexecute_single -- Remote execute batch command:: -- %~1: ServerName:: -- %~2: BatPath:: -- %~2: BatNameSETLOCALset "ServerName=%1"set "BatPath=%2"set "BatName=%3":: Use current login user to execute below commandif "%~1" equ "localhost" (CMD /C "CD /D %BatPath% & %BatName%">>%LOGFILE% 2>&1)if "%~1" neq "localhost" (PsExec.exe \\%ServerName% -accepteula CMD /C "CD /D %BatPath% & %BatName%">>%LOGFILE% 2>&1):: Ending logsecho ******************************************************************** >>%LOGFILE% 2>&1echo **** End **************** >>%LOGFILE% 2>&1echo ******************************************************************** >>%LOGFILE% 2>&1echo End at %DATE%%TIME% >>%LOGFILE% 2>&1echo ------------------------------------------------------------>>%LOGFILE% 2>&1ENDLOCALgoto:eof
0 0