person-share/vm_smb.bat
2025-05-26 09:51:02 +00:00

62 lines
1.5 KiB
Batchfile

@echo off
setlocal
REM -- Credential Management -- (Pre-register to avoid 'net use' hanging)
REM cmdkey /add:192.168.11.81 /user:zgqq /pass:1995826zgQ
REM cmdkey /add:192.168.11.50 /user:debian /pass:zgqq
REM -- Configuration Area --
REM Define total number of mappings
set MAPPINGS_COUNT=3
REM Mapping #1
set SHARE_1=\\192.168.11.50\Share01
set DRIVE_1=Z:
set USER_1=debian
set PASS_1=zgqq
REM Mapping #2
set SHARE_2=\\192.168.11.81\machines
set DRIVE_2=Y:
set USER_2=zgqq
set PASS_2=1995826zgQ
REM Mapping #3
set SHARE_3=\\192.168.11.81\machines_snap
set DRIVE_3=X:
set USER_3=zgqq
set PASS_3=1995826zgQ
REM To add more entries, copy the four lines above, change to SHARE_4...PASS_4, and increase MAPPINGS_COUNT accordingly
REM ----------
REM -- Main Loop: Iterate through mappings by index --
for /L %%i in (1,1,%MAPPINGS_COUNT%) do (
call :map_share "%%SHARE_%%i%%" "%%DRIVE_%%i%%" "%%USER_%%i%%" "%%PASS_%%i%%"
)
goto :eof
:map_share
REM Parameters: %~1 = share, %~2 = drive, %~3 = user, %~4 = pass
set "share=%~1"
set "drive=%~2"
set "user=%~3"
set "pass=%~4"
REM First delete existing mapping (attempt regardless of existence)
net use %drive% /delete /y >nul 2>&1
REM Then create new mapping and make it persistent
net use %drive% "%share%" "%pass%" /user:"%user%" /persistent:yes >nul 2>&1
REM Print result with timestamp
if errorlevel 1 (
echo [%date% %time%] Mount failed: %share% to %drive%
) else (
echo [%date% %time%] Mount successful: %share% to %drive%
)
goto :eof