Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
windows:script_montage_lecteurs_reseaux [2017/06/26 11:35] pascal créée |
windows:script_montage_lecteurs_reseaux [2017/08/18 11:17] (Version actuelle) luc |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{: | ||
====== Script de montage de lecteurs réseaux ====== | ====== Script de montage de lecteurs réseaux ====== | ||
- | @echo off | + | Le script ci-dessous peut être lancé tel quel et fera apparaître un menu ou il peut être appelé en ligne de commande / depuis un raccourci avec les paramètres suivants :\\ |
- | | + | |
- | | + | * /mount monte tous les lecteurs définis par les variables |
+ | * /? ou /help message d'aide à la syntaxe | ||
+ | | ||
- | REM special characters table (most used) | + | < |
- | REM replace the accentuated char by its DOS value in path# and desc# vars | + | @echo off |
- | REM windows | DOS | + | REM variables definition |
- | REM | + | set ver_network=7 |
- | | + | |
- | REM ä | „ | + | |
- | REM é | ‚ | + | |
- | REM ê | ˆ | + | |
- | REM è | Š | + | |
- | REM ë | ‰ | + | |
- | REM î | Œ | + | |
- | REM ï | ‹ | + | |
- | REM ô | “ | + | |
- | REM ö | ” | + | |
- | REM û | – | + | |
- | REM ù | — | + | |
- | REM ü | | + | |
- | | + | REM special characters table (most used) |
- | REM example: | + | REM replace |
- | | + | REM windows | DOS |
- | REM descA=The description of my share (optional) | + | REM â | ƒ |
- | set pathA= | + | REM |
- | | + | REM ä | „ |
- | | + | REM é | ‚ |
- | | + | REM ê | ˆ |
- | | + | REM è | Š |
- | | + | REM ë | ‰ |
- | | + | REM î | Œ |
- | | + | REM ï | ‹ |
- | | + | REM ô | “ |
- | | + | REM ö | ” |
- | | + | REM û | – |
- | | + | REM ù | — |
- | set pathI= | + | REM ü | |
- | set descI= | + | |
- | set pathJ= | + | |
- | set descJ= | + | |
- | set pathK= | + | |
- | set descK= | + | |
- | set pathL= | + | |
- | set descL= | + | |
- | set pathM= | + | |
- | set descM= | + | |
- | set pathN= | + | |
- | set descN= | + | |
- | set pathO= | + | |
- | set descO= | + | |
- | set pathP= | + | |
- | set descP= | + | |
- | set pathQ= | + | |
- | set descQ= | + | |
- | set pathR= | + | |
- | set descR= | + | |
- | set pathS= | + | |
- | set descS= | + | |
- | set pathT= | + | |
- | set descT= | + | |
- | set pathU= | + | |
- | set descU= | + | |
- | set pathV= | + | |
- | set descV= | + | |
- | set pathW= | + | |
- | set descW= | + | |
- | set pathX= | + | |
- | set descX= | + | |
- | set pathY= | + | |
- | set descY= | + | |
- | set pathZ= | + | |
- | | + | |
- | | + | REM Set the environment variables path# and desc# |
- | | + | REM example: |
- | if " | + | REM pathA="\\server_name.local\my share with spaces\%username%" |
- | if " | + | REM descA=The description of my share (optional) |
- | if " | + | set pathA= |
- | if " | + | set descA= |
- | if " | + | set pathB= |
+ | set descB= | ||
+ | set pathE= | ||
+ | set descE= | ||
+ | set pathF= | ||
+ | set descF= | ||
+ | set pathG= | ||
+ | set descG= | ||
+ | set pathH= | ||
+ | set descH= | ||
+ | set pathI= | ||
+ | set descI= | ||
+ | set pathJ= | ||
+ | set descJ= | ||
+ | set pathK= | ||
+ | set descK= | ||
+ | set pathL= | ||
+ | set descL= | ||
+ | set pathM= | ||
+ | set descM= | ||
+ | set pathN= | ||
+ | set descN= | ||
+ | set pathO= | ||
+ | set descO= | ||
+ | set pathP= | ||
+ | set descP= | ||
+ | set pathQ= | ||
+ | set descQ= | ||
+ | set pathR= | ||
+ | set descR= | ||
+ | set pathS= | ||
+ | set descS= | ||
+ | set pathT= | ||
+ | set descT= | ||
+ | set pathU= | ||
+ | set descU= | ||
+ | set pathV= | ||
+ | set descV= | ||
+ | set pathW= | ||
+ | set descW= | ||
+ | set pathX= | ||
+ | set descX= | ||
+ | set pathY= | ||
+ | set descY= | ||
+ | set pathZ= | ||
+ | set descZ= | ||
- | | + | REM command line parameters |
- | if defined interactive call mode con cols=80 lines=50 | + | if " |
- | echo Mapping network drives v%ver_network% | + | if "%1" |
- | echo ------------------------- | + | if "%1" |
- | : | + | if " |
- | echo. | + | if " |
- | echo Choose your option: | + | if " |
- | echo - Unmount all drives. | + | |
- | echo + Mount all drives. | + | |
- | echo | + | |
- | | + | |
- | | + | |
- | echo. | + | |
- | set /p choix=Your choice: | + | REM Main menu |
- | if not " | + | if defined interactive call mode con cols=80 lines=50 |
- | | + | echo Mapping network drives v%ver_network% |
- | | + | echo ------------------------- |
- | | + | :mainmenu |
- | | + | echo. |
- | | + | echo Choose your option: |
- | echo Out of range! | + | echo |
- | goto mainmenu | + | echo |
+ | echo | ||
+ | echo ? | ||
+ | echo | ||
+ | echo. | ||
+ | set /p choix=Your choice: | ||
+ | if not " | ||
+ | if # | ||
+ | if # | ||
+ | if # | ||
+ | if # | ||
+ | if # | ||
+ | echo Out of range! | ||
+ | goto mainmenu | ||
- | :unmountAll | ||
- | echo. | ||
- | echo Unmount all network drives... | ||
- | call net use * /delete /y | ||
- | if ERRORLEVEL 1 goto fin | ||
- | if ERRORLEVEL 0 echo Unmount OK! | ||
- | if defined interactive goto mainmenu | ||
- | goto fin | ||
+ | :unmountAll | ||
+ | echo. | ||
+ | echo Unmount all network drives... | ||
+ | call net use * /delete /y | ||
+ | if ERRORLEVEL 1 goto fin | ||
+ | if ERRORLEVEL 0 echo Unmount OK! | ||
+ | if defined interactive goto mainmenu | ||
+ | goto fin | ||
- | :mountAll | ||
- | for %%a in (A B E F G H I J K L M N O P Q R S T U V W X Y Z) do if defined path%%a call :mount %%a | ||
- | if defined interactive goto mainmenu | ||
- | goto fin | ||
+ | :mountAll | ||
+ | for %%a in (A B E F G H I J K L M N O P Q R S T U V W X Y Z) do if defined path%%a call :mount %%a | ||
+ | if defined interactive goto mainmenu | ||
+ | goto fin | ||
- | :mount1 | ||
- | :showDrives | ||
- | cls | ||
- | echo List defined drives | ||
- | echo. | ||
- | call : | ||
- | if # | ||
- | echo. | ||
- | echo 7 Main menu | ||
- | echo 0 Quit | ||
- | echo. | ||
- | set /p lettre=Your choice: | + | :mount1 |
- | if not " | + | :showDrives |
- | set lettre=%lettre:~0,1% | + | cls |
- | if %lettre%==7 goto mainmenu | + | echo List defined drives |
- | if %lettre%==0 goto fin | + | echo. |
- | | + | call :listelecteurs |
- | | + | if #%choix%==#? goto mainmenu |
- | goto fin | + | echo. |
+ | echo 7 Main menu | ||
+ | echo 0 Quit | ||
+ | echo. | ||
+ | set /p lettre=Your choice: | ||
+ | if not " | ||
+ | set lettre=%lettre: | ||
+ | if %lettre%==7 goto mainmenu | ||
+ | if %lettre%==0 goto fin | ||
+ | for %%a in (A B E F G H I J K L M N O P Q R S T U V W X Y Z) do if %lettre%==%%a call :mount %%a | ||
+ | if defined interactive goto mainmenu | ||
+ | goto fin | ||
- | :mount | ||
- | REM Subroutine : mount a network drive | ||
- | echo. | ||
- | echo Mount drive %1: | ||
- | echo Path: %%path%1%% | ||
- | echo Description: | ||
- | if exist %1:\. call net use %1: /delete | ||
- | if defined path%1 call net use %1: %%path%1%% / | ||
- | GOTO:EOF | ||
+ | :mount | ||
+ | REM Subroutine : mount a network drive | ||
+ | echo. | ||
+ | echo Mount drive %1: | ||
+ | echo Path: %%path%1%% | ||
+ | echo Description: | ||
+ | if exist %1:\. call net use %1: /delete | ||
+ | if defined path%1 call net use %1: %%path%1%% / | ||
+ | GOTO:EOF | ||
- | :UpperCase | ||
- | REM Subroutine : convert a variable VALUE to all UPPER CASE. | ||
- | REM The argument for this subroutine is the variable NAME. | ||
- | for %%i in (" | ||
- | GOTO:EOF | ||
+ | :UpperCase | ||
+ | REM Subroutine : convert a variable VALUE to all UPPER CASE. | ||
+ | REM The argument for this subroutine is the variable NAME. | ||
+ | for %%i in (" | ||
+ | GOTO:EOF | ||
- | : | ||
- | REM Subroutine : list configured drives (path# vars) | ||
- | for %%a in (A B E F G H I J K L M N O P Q R S T U V W X Y Z) do if defined path%%a call echo %%a %%path%%a%% (%%desc%%a%%) | ||
- | GOTO:EOF | ||
+ | : | ||
+ | REM Subroutine : list configured drives (path# vars) | ||
+ | for %%a in (A B E F G H I J K L M N O P Q R S T U V W X Y Z) do if defined path%%a call echo %%a %%path%%a%% (%%desc%%a%%) | ||
+ | GOTO:EOF | ||
- | :version | ||
- | echo. | ||
- | echo %0 version %ver_network% | ||
- | goto fin | ||
- | | + | :version |
- | echo. | + | echo. |
- | echo Syntax : %0 [/ | + | echo %0 version |
- | | + | goto fin |
- | echo / | + | |
- | echo /unmount : unmount all drives | + | |
- | echo /version : show version | + | |
- | | + | :syntaxe |
- | set ver_network= | + | echo. |
- | set interactive= | + | echo Syntax : %0 [/ |
- | set lettre= | + | echo. |
- | set choix= | + | echo / |
+ | echo /unmount : unmount all drives | ||
+ | echo /version : show version | ||
- | | + | :fin |
- | for %%a in (A B E F G H I J K L M N O P Q R S T U V W X Y Z) do if defined desc%%a call set desc%%a= | + | set ver_network= |
+ | set interactive= | ||
+ | set lettre= | ||
+ | set choix= | ||
+ | |||
+ | for %%a in (A B E F G H I J K L M N O P Q R S T U V W X Y Z) do if defined path%%a call set path%%a= | ||
+ | for %%a in (A B E F G H I J K L M N O P Q R S T U V W X Y Z) do if defined desc%%a call set desc%%a= | ||
+ | </ |