miscellaneous-scripts/copy-to-remote.cmd

49 lines
1.3 KiB
Batchfile

@echo off
:setup
setlocal EnableDelayedExpansion
set whiteList[1]=C:\virtual_drives\k\airnorth
set whiteList[2]=C:\virtual_drives\k\united
set whiteList[3]=C:\virtual_drives\m\users\ua-user
set whiteList[4]=C:\virtual_drives\m\users\4n-user\4n-suite\1.0
set whiteList[5]=C:\virtual_drives\u\ua
set whiteList[6]=C:\virtual_drives\z\qlo\users\ua
set whiteList[7]=C:\virtual_drives\common\Qlogic.Signal.Web.Sdk
set whiteList[8]=C:\virtual_drives\common\StationManager\4.7
set workingDir=%cd%
set relativePath=%cd:~3%
for /l %%i in (1,1,8) do (
if /i "%workingDir%" equ "!whiteList[%%i]!" goto CheckCommandLine
)
set err="%workingDir%" not in whitelist.
goto Error
:CheckCommandLine
set argCount=0
for %%x in (%*) do (
set /A argCount+=1
set "argVec[!argCount!]=%%~x"
)
for /L %%i in (1,1,%argCount%) do (
echo %%i- "!argVec[%%i]!"
if %%i equ 1 set host=!argVec[%%i]!
if /i "!argVec[%%i]:~0,2!" == "/m" set "mirrorArg= /mir"
if /i "!argVec[%%i]:~0,2!" == "/l" set "listOnlyArg= /l"
if /i "!argVec[%%i]:~0,8!" == "/dry-run" set "listOnlyArg= /l"
)
if [%host%] == [] (
set err=Please provide host name.
goto Error
)
:Run
robocopy /xo /e "%workingDir%" "\\%host%\%relativePath%"%listOnlyArg%%mirrorArg% /xd net6.0 net6.0-windows publish ref win-x64 win-x86
goto Cleanup
:Error
echo %err%
:Cleanup
endlocal