Code source de ch.lerolle.free.fr/rsrc/mt/datasur.bat:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
    @echo off
    set     TITRE=DATASUR %1 = %2 v4.22 vol.USB=HIJL BIG1=E BIG2=F Samsung: si # HOME Q: sur X:\windows\quick-launch-save-ql=lien! 
    Title  %TITRE%

    set RAPPORT=%TEMP%\rapport.txt
    echo .             > %RAPPORT%
    echo erreurs: ">>>"    >> %RAPPORT%

REM    Lecteur Reel/Virtuel Contenu
REM    A    R    disquette-floppy
REM    B    V    batches
REM    C    R    syteme-programmes
REM    D    R    donnees-chris: documents, parametres-perso, progasis
REM    E    R    BIG1
REM    F    R    BIG2
REM    G    V    partie de BIG1 Virtuelle
REM    H    V    disque dur externe usb volume #1 WD SAVEDATA
REM    I    R    disque dur externe usb volume #2 WD SAVEBIG1
REM    J    R    disque dur externe usb volume #3 WD SAVEBIG2 ou Advance
REM    K    V    Liberkey racine
REM    L    R    disque dur externe usb volume #4 WD SAVEBIG2
REM    M    V    Musique
REM    N    R    cle USB #1 Christophe sony, MULTISYSTEM...
REM    O    R    cle USB #2 Corinne cibox, lecteur de cartes SD...
REM    P    V    Parametres
REM    Q    V    Quick Launch
REM    R    V    buReau
REM    S    V    programmes Standalone ( progasis )
REM    T    R    Telephone mobile ( utilisée uniquement en mode 'transfert de fichiers' et pas 'Telephone' )
REM    U    V    Lecteur de CD-DVD (sur ASUS)
REM    V    R    Lecteur-GraVeur de CD dVd
REM    W    V    Web
REM    X    V    racine actuelle des DONNEES-de-BASE-SOURCE DE SAUVEGARDE
REM    Y    V    racine actuelle des DONNEES-de-BASE-CIBLE  DE SAUVEGARDE
REM    Z    V    chantier en cours ( CLAF janvier 2011 ) ou racine des donnees 2e ordi en reseau

REM REGLES FONDAMENTALES:

REM - il existe une structure Standard CL des dossiers, determinee ici, via les 'dossiers par defaut' DOSD-xyz

REM - cette structure est obligatoirement respectée sur tous les volumes USB MOBILES

REM - elle est egalement appliquee, a priori, sur tout PC LOCAL
REM   des exceptions peuvent être stipulees par des variables d'environnement Expresses DOSS-xyz, 
REM   prises en compte uniquement si le paramètre "HOME" est utilisé

REM - le dossier Quick Launch est le seul qu'on ne sait pas deplacer dans D:\DATA
REM   de plus il change de place entre WinXP et Win7
REM   Q: a donc une valeur fixe sur un volume USB, et variable en fonction de l'OS, sur un volume local...

REM - sur un volume USB, chaque 'junction' NTFS pointe vers un chemin absolu du volume-cible, 
REM   dont la lettre est attribuée au  au moment du linkage, et stockée dans le file-system du volume: 
REM   exemple: 'my dropbox\PARAM-LINK' pointe vers L:\mesdoc\param, si L change, 'my dropbox\PARAM-LINK' est vide !
REM   ce volume doit donc se voir attribuer toujours la meme lettre sur tous les systemes hotes (ex DATA-20Go-vL= sur L!)


REM Detection de l'OS (source blogmotion.fr)
    ver | find /i "version 6.1." > nul
    if %errorlevel%==0 set VERSIONWINDOWS=Windows 7
    ver | find /i "version 6.0." > nul
    if %errorlevel%==0 set VERSIONWINDOWS=Windows Vista
    ver | find /i "version 5.1." > nul
    if %errorlevel%==0 set VERSIONWINDOWS=Windows XP
    ver | find /i "version 5.2." > nul
    if %errorlevel%==0 set VERSIONWINDOWS=Windows 2003
    ver | find /i "Windows 2000" > nul
    if %errorlevel%==0 set VERSIONWINDOWS=Windows 2000
    
    set CHEMINQUICKLOC=
    if "%VERSIONWINDOWS%" == "Windows 7"    set CHEMINQUICKLOC=%userprofile%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar
    if "%VERSIONWINDOWS%" == "Windows XP"    set CHEMINQUICKLOC=%APPDATA%\Microsoft\Internet Explorer\Quick Launch

REM ----------------------------------------------------------------------
REM     debut traitement des parametres fournis...
REM ----------------------------------------------------------------------

REM ----------------------------------------------------------------------
REM     1 - détermination de la variable DATASUR.....
REM ----------------------------------------------------------------------

    set DATASUR=
    set DATACTION=Subst
    if "%1" == "."        set DATASUR=.                  REM Dossier courant (ex: SunBright)
    if "%1" == "ROOT"    set DATASUR=\.                 REM a la racine du lecteur courant (ex: ajout cle USB)
REM    variable d'environnement ( vide si nouveau PC )    NB: si commentaire sur ligne+1: PowerBatch deforme DATASUR !
    if "%1" == "HOME"    set DATASUR=%DOSS-DATA%
    if "%1" == "KILL"    set DATACTION=KILL
    if "%1" == "KILL"    set DATASUR=\.
    if "%1" == ""            set DATASUR=\.        

    if "%DATASUR%" == ""    set DATASUR=%1

REM ----------------------------------------------------------------------
REM ATTENTION: si %DATASUR% est racine d'un disque,     il FAUT un \ a la fin, 
REM         et si %DATASUR% est un sous-Dossier, il NE FAUT PAS de \ a la fin.

REM     si le dernier caractere de DATASUR n'est pas un 2points...
    if not "%DATASUR:~-1%" == ":" goto :OKLECTEUR

REM     si de la forme D: je rajoute antislash derrière... 
    if exist %DATASUR%\NUL (
            set DATASUR=%DATASUR%\
            goto :OKLECTEUR
        )

    set /P OUINON=[ LE LECTEUR %DATASUR% EST INCONNU ! 'Entree' pour Fin]
    exit

:OKLECTEUR

REM ----------------------------------------------------------------------
REM     2 - définition des DOSSIERS par DEFAUT DOSD.., bases sur DATASUR, et de DOSS-ASIS des que possible
REM ----------------------------------------------------------------------

GOTO :FINREM

§§§§§    EXEMPLE D'AFFECTATION des Dossiers par Défaut: (coller ici les variables actuelles...)
§§§§§
§§§§§    Groupe1: sous-dossier de DATA (données utilisées le plus souvent)
§§§§§        DOSD.1DATA.ASIS=    L:\progasis
§§§§§        DOSD.1DATA.BATCHES=    L:\progasis\batches
§§§§§        DOSD.1DATA.LIBERKEY=    L:\progasislbk
§§§§§        DOSD.1DATA.BUREAU=    L:\windows\bureau
§§§§§        DOSD.1DATA.QUICKLN=    L:\windows\quick-launch-save-ql=lien!
§§§§§        DOSD.1DATA.PARAM=    L:\mes-documents\param
§§§§§        DOSD.1DATA.UBIQ=    L:\mes-documents\My Dropbox
§§§§§        DOSD.1DATA.ENCOURS=    L:\mes-documents\EMPLOI\!formateur\!clients\CLAF
§§§§§
§§§§§    Groupe2: gros volumes, ailleurs que sous DATA
§§§§§        DOSD.2BIG1.CORINNE=    J:\z-ZEN-BIG-GHOST\!BACKUP-CLE-USB-Corinne
§§§§§        DOSD.2BIG1.MUSIQUE=    J:\z-ZEN-BIG-GHOST\musique
§§§§§        DOSD.2BIG1.WEB=        J:\z-ZEN-BIG-GHOST\web\free
§§§§§
§§§§§    Groupe3: sauvegardes
§§§§§        DOSD.3SAVE.DATA=    L:\

:FINREM
set DOSD.1DATA=%DATASUR%
    set DOSD.1DATA.ASIS=%DOSD.1DATA%\progasis
    set DOSD.1DATA.BATCHES=%DOSD.1DATA%\progasis\batches
    set DOSD.1DATA.LIBERKEY=%DOSD.1DATA%\progasislbk
    set DOSD.1DATA.BUREAU=%DOSD.1DATA%\windows\bureau
    set DOSD.1DATA.PARAM=%DOSD.1DATA%\mes-documents\Google Drive\PARAM

REM !!!    set DOSD.1DATA.QUICKLN=%DOSD.1DATA%\windows\quick launch !!! NON car le LINK peut brancher sur les QuickLaunch du systeme local !!!
    set DOSD.1DATA.QUICKLN=%DOSD.1DATA%\windows\quick-launch-save-ql=lien!

REM    set DOSD.1DATA.UBIQ=%DOSD.1DATA%\mes-documents\Google Drive
    set DOSD.1DATA.ENCOURS=%DOSD.1DATA%\mes-documents\immo-oleron

    set DOSD.2BIG1=I:\
    set DOSD.2BIG1.CORINNE=%DOSD.2BIG1%z-ZEN-BIG-GHOST\!BACKUP-CLE-USB-Corinne
    set DOSD.2BIG1.MUSIQUE=%DOSD.2BIG1%z-ZEN-BIG-GHOST\musique
    set DOSD.2BIG1.WEB=%DOSD.2BIG1%z-ZEN-BIG-GHOST\web\free

    set DOSD.3SAVE=H:\z-ZENI-D1
    set DOSD.3SAVE.DATA=%DOSD.3SAVE%

REM ----------------------------------------------------------------------
REM     3 - explicitation USAGE passé en 2e parametre
REM ----------------------------------------------------------------------

    set USAGE=%2

:QUELUSAGE

    if "%USAGE%" == "s"        set USAGE=S
    if "%USAGE%" == "S"        set USAGE=SOURCEX
    if "%USAGE%" == "c"        set USAGE=C
    if "%USAGE%" == "C"        set USAGE=CIBLEY
    if "%USAGE%" == "k"        set USAGE=K
    if "%USAGE%" == "K"          set DATACTION=KILL
    if "%USAGE%" == "SOURCEX"    goto :OKUSAGE
    if "%USAGE%" == "CIBLEY"    goto :OKUSAGE
    if "%USAGE%" == "K"        goto :OKUSAGE

REM    %DOSS-ASIS%\util\beep
    set /P USAGE=[%DATASUR% est-il Source ou Cible, K pour tout desallouer ?:  (SsCcKk, ou d pour Demarrepc, Cible par defaut)?]
    if not "%USAGE%" == "d" goto :QUELUSAGE

REM     si "%USAGE%" = "d", je lance demarrepc.bat, qui lance tous les "gadgets" par défaut ... 
REM        %DOSS-ASIS%\util\beep
    echo OK pour lancer Demarrepc.bat ( Ctrl C pour interrompre)?
    pause
    %DOSS-ASIS%\batches\demarrepc.bat
        EXIT

:OKUSAGE
    echo Designe le dossier #1=%1 (par defaut %DATASUR%) comme %USAGE%, selon #2
    echo .
    echo variables EXPRESSES si #1=HOME (Ordi=%COMPUTERNAME% user=%USERNAME%) : =================================
    set DOSS-
    echo .
    echo variables PAR DEFAUT...........(Ordi=%COMPUTERNAME% user=%USERNAME%) : =================================
    set DOSD.
    echo .

if "%USAGE%" == "CIBLEY"    (
    CALL :CREEVOLUME Y SauveCible    "%DATASUR%"
    GOTO :FINSUBST
    )

:INITSUBST

    CALL :CREEVOLUME X Data-global    "%DATASUR%"

REM !!!!!! 1ere affectation commentee !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
REM ! Si pas "a la maison" (HOME), je suis sur un volume EXTERNE, donc j'ignore et ecrase le chemin Express LOCAL
    if not "%1" == "HOME"        set DOSS-ASIS=

REM ! Si le chemin Express LOCAL non stipulé en var. d'environnement, j'utilise les chemins Standards d'un volume USB
    if "%DOSS-ASIS%" == ""        set DOSS-ASIS=%DOSD.1DATA.ASIS%

    CALL :CREEVOLUME S StandAlone    "%DOSS-ASIS%"
REM !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    PATH=%PATH%;%DOSS-ASIS%\unix;%DOSS-ASIS%\util;%DOSS-ASIS%\BATCHES
REM    %DOSS-ASIS%\util\VolumeManager.exe set 10000 trop fort, baissé à 5000, puis 2000 cause locataires...
    %DOSS-ASIS%\util\VolumeManager.exe set  2000
REM !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    if not "%1" == "HOME"        set DOSS-BIG1=
    if "%DOSS-BIG1%" == ""         set DOSS-BIG1=%DOSD.2BIG1%
    CALL :CREEVOLUME G BiG1-11    "%DOSS-BIG1%"

REM    if not "%1" == "HOME"        set DOSS-CORINNE=
REM    if "%DOSS-CORINNE%" == ""     set DOSS-CORINNE=%DOSD.2BIG1.CORINNE%
REM    CALL :CREEVOLUME K Corinne    "%DOSS-CORINNE%"

    if not "%1" == "HOME"        set DOSS-LIBERKEY=
    if "%DOSS-LIBERKEY%" == ""     set DOSS-LIBERKEY=%DOSD.1DATA.LIBERKEY%
    CALL :CREEVOLUME K LiberKey    "%DOSS-LIBERKEY%"

    if not "%1" == "HOME"        set DOSS-MUSIQUE=
    if "%DOSS-MUSIQUE%" == ""    set DOSS-MUSIQUE=%DOSD.2BIG1.MUSIQUE%
    CALL :CREEVOLUME M Musique     "%DOSS-MUSIQUE%"

    if not "%1" == "HOME"        set DOSS-PARAM=
    if "%DOSS-PARAM%" == ""        set DOSS-PARAM=%DOSD.1DATA.PARAM%
    CALL :CREEVOLUME P Parametres    "%DOSS-PARAM%"
REM !
    if     "%1" == "HOME"        set DOSS-QUICKLN=%CHEMINQUICKLOC%
    if not "%1" == "HOME"        set DOSS-QUICKLN=
    if "%DOSS-QUICKLN%" == ""    set DOSS-QUICKLN=%DOSD.1DATA.QUICKLN%
    CALL :CREEVOLUME Q QuickLaunch    "%DOSS-QUICKLN%"

    if not "%1" == "HOME"        set DOSS-BUREAU=
    if "%DOSS-BUREAU%" == ""    set DOSS-BUREAU=%DOSD.1DATA.BUREAU%
    CALL :CREEVOLUME R Bureau     "%DOSS-BUREAU%"

REM !    if not "%1" == "HOME"        set DOSS-UBIQ=
REM !    if "%DOSS-UBIQ%" == ""        set DOSS-UBIQ=%DOSD.1DATA.UBIQ%
REM !    CALL :CREEVOLUME U Ubiquite    "%DOSS-UBIQ%"

    if not "%1" == "HOME"        set DOSS-WEB=
    if "%DOSS-WEB%" == ""        set DOSS-WEB=%DOSD.2BIG1.WEB%
    CALL :CREEVOLUME W Web-Sites    "%DOSS-WEB%"

REM Attention: variante pour SAVE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    if not "%1" == "HOME"        set DOSS-SAVE=%DOSS-DATA%
    if "%DOSS-SAVE%" == ""        set DOSS-SAVE=%DOSD.3SAVE.DATA%
    CALL :CREEVOLUME Y SauveCible    "%DOSS-SAVE%"

    if not "%1" == "HOME"        set DOSS-ENCOURS=
    if "%DOSS-ENCOURS%" == ""    set DOSS-ENCOURS=%DOSD.1DATA.ENCOURS%
    CALL :CREEVOLUME Z En-Cours    "%DOSS-ENCOURS%"

    if not "%1" == "HOME"        set DOSS-BATCHES=
    if "%DOSS-BATCHES%" == ""    set DOSS-BATCHES=%DOSD.1DATA.BATCHES%
    CALL :CREEVOLUME B Batches    "%DOSS-BATCHES%"


:FINSUBST
    echo .
REM    echo FINSUBST ------------------------------------------------------------------

    call %DOSS-DATA%\progasis\batches\subst-affiche.bat 0
REM    %DOSS-ASIS%\unix-cygwin\sleep.exe 10
    if "%DATACTION%" == "KILL" GOTO :FIN

:CAFE     +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

REM    echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
REM    echo NB: CAFE provoquera ouverture des fichiers avec logiciels LEROLLE:
REM    echo .........pour le GELER temporairement, appuyer touches Ctrl + Windows
REM    echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
REM    echo .
rem    tue l'éventuel processus cafe en cours, pour éviter les doublons
REM    essai GELER KILL car cafe lancé par datasur ne fonctionne pas bien: 
REM    il faut le fermer et le relancer 20/05/2009
REM    echo on
    echo Je TUE K:\fmk\Framakey\CAFEPortable\CAFEPortable.exe ...
    %DOSS-ASIS%\util\psKill.exe cafe >nul
rem    echo j'ai tue cafe, dors 1 secondes..
rem    S:\unix\sleep.exe 1
rem    echo Entrer pour continuer...
REM    pause

    if not "%1" == "HOME"        goto :CAFE-DOSSASIS
    if exist "D:\dataCO\mes doc corinne\progasisCO\adm PortableCafe\cafe.exe" (
REM              echo je lance cafe sur D:\dataCO\mes doc corinne\progasisCO\adm PortableCafe\cafe.exe
         "D:\dataCO\mes doc corinne\progasisCO\adm PortableCafe\cafe.exe"
              GOTO :CAFEFIN
        )

:CAFE-DOSSASIS
    echo Je lance K:\fmk\Framakey\CAFEPortable\CAFEPortable.exe ...
    start K:\fmk\Framakey\CAFEPortable\CAFEPortable.exe
REM    S:\unix\sleep.exe 1
REM    pause

:CAFEFIN  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
REM    supprime apres maj cafe v2 5/05/2015, et retabli le 17/12/2015, c'est une bonne idee !!!  
if not "%1" == "HOME"        %windir%\explorer.exe /n,/e,Q:\
    GOTO :FIN

rem    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

:CREEVOLUME ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
set LETTRE=%1
set LEGENDE=%2
set CHEMIN=%3 
    echo  %DATACTION% %LETTRE%: %LEGENDE%    %CHEMIN%        
    
REM    je déconnecte le lecteur virtuel...
    subst %LETTRE%: /D >nul

REM    si parametre %1 est KILL, je dors 1s, sans le reconnecter...
REM    sleep entre chaque KILL, car sur PC rapide, on en oublie !!!
REM    dir \.\
REM    if "%DATACTION%" == "KILL"    %DOSS-ASIS%\unix-cygwin\sleep.exe 1
    if "%DATACTION%" == "KILL"    GOTO :CREEVOLUMEFIN

    subst %LETTRE%: %CHEMIN%   >>%RAPPORT%
  
:CREEVOLUMEFIN ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
GOTO :EOF

:FIN    ------------------------------------------------------------------------
@echo on
@echo %TIME% ---- FIN DATASUR -------------------------