IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Vos Contributions VBScript Discussion :

Sauvegarde ACL d'une Arborescence [Sources]


Sujet :

Vos Contributions VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2007
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 125
    Par défaut Sauvegarde ACL d'une Arborescence
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    'Ce script à pour but, de sauvagrader les ACL.
    'il scann les X premiers sous Repertoires de chaque Repertoire Racine.'
    'il stocke les fichier des ACL sur un Emplacement defini.																 '
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
     
    ''''''''''''''''''''''''''''''''Declaration des variables''''''''''''''''''''''''''''''''''''''''''''''
     
    Dim oFSO,oFld
    Dim Chemin_def,Chemin,Chemin_Next,Chemin_Next1,Chemin_Next2 'pour le traitement nom du chemin (gestion des caracrteres /,:, ,&,_)
    Dim Subnumber
    Dim stRep_log
    Dim Var_test
    Dim Ext
     
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    Set shl = createobject("wscript.shell")
     
    stRep = "d:\users" 'Emplacement à Scanner
    stRep_log = "C:\Logs\ACL\" 'Emplacement de stockage des fichiers ACL
    LectRep stRep 'Rappel de la recurcivite sur les repertoires
    Subnumber = 0
     
    '
    ' Fonction récursive de parcours de répertoire
    '
    Sub LectRep (stR)
    Verif(stRep_log)
    If Subnumber < 4 Then 'ici le nombre de sous repertoires à scanner
     For each oFld in  oFSO.GetFolder(stR).SubFolders 'pour chaque sous repertoires
      Subnumber = Subnumber + 1 'on incremente le compteur (juqu'au nombre de sous rep à scanner)
      Ext = ".txt" 'definition de l'extension du fichier de stockage ACL
      If InStr (oFld.Path,"\") Then 'recherche du caractere dans le nom du repertoire sacnner
      Chemin = Replace(oFld.Path,"\","-")'remplacement du caractere dans le nom du repertoire sacnner
      Chemin_def = Chemin & Ext 'nom du repertoire retravaillé present dans la variable Chemin_def
      End if
      	If InStr (Chemin,":") Then
        Chemin_Next = Replace(Chemin,":","")
        Chemin_def = Chemin_Next & Ext
        End if
      		If InStr (Chemin_Next," ") Then
      		Chemin_Next1 = Replace(Chemin_Next," ","_")
      		Chemin_def = Chemin_Next1 & Ext
      		End If
      			If InStr (Chemin_Next1,"&") Then
      			Chemin_Next2 = Replace(Chemin_Next1,"&","ET")
      			Chemin_def = Chemin_Next2 & Ext
      			End If
     
      Wscript.Echo "--------------- " & oFld.PAth & "-----------------" 'affiche nom du repertoire scanné
      WScript.Echo Subnumber 'affiche la position du repertoire scanné
      WScript.Echo Chemin_def 'affiche le nom du repertoire retravaillé
      Commande (oFld.PATH)'appel de la commande DOS de sauvegarde des ACL
      LectRep oFld.PATH 'appel de la recursivitée sur les sous repertoires  
     Next
     Else
     Subnumber = 0 'remise à 0 du compteur de sous repertoire
    End If
    end Sub
    '
    ' commande de sauvegarde ACL à executer
    '
    Sub Commande (stR)
    Dim stCde
    wscript.echo stR
    stCde = "cmd  /C setacl.exe -on " &"""" & stR &  """" &" -ot file -actn list -lst f:sddl;w:d,s,o,g;i:n;s:y -rec no > "&stRep_log &Chemin_def
    WScript.Echo stCde
    shl.run stCde,0,True
    WScript.Echo "conetue var " &Chemin_def
    End Sub
     
    'Verification de l'existence du repertoire de stockage des ACL et création si il n'existe pas
     
    Sub Verif(stRep_log)
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    	If Not ofso.FolderExists(stRep_log) Then
    		WScript.echo"pas de rep log"
    		Verif(ofso.GetParentFolderName(stRep_log))
    		ofso.CreateFolder(stRep_log)
    		WScript.echo"Rep_Log créé"
     
    	End If
    End Sub

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    mika...

    une peu de commentaires sur l'utilisation/la fonction de ce (s) scripts serait le bienvenue

    un lien pour ACL

Discussions similaires

  1. Sauvegarde et compression d'une arborescence avec critères
    Par alberick dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 24/03/2012, 10h41
  2. restauration ACL d'une Arborescence
    Par micka180 dans le forum Vos Contributions VBScript
    Réponses: 0
    Dernier message: 22/12/2009, 15h20
  3. Remonter une arborescence
    Par Gwipi dans le forum Requêtes
    Réponses: 4
    Dernier message: 26/11/2003, 18h04
  4. [VB6] parcourir une arborescence de repertoire
    Par pecheur dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 30/04/2003, 17h33
  5. créer une arborescence windows sous forme d'arbre java
    Par chupachoc dans le forum Composants
    Réponses: 3
    Dernier message: 01/10/2002, 16h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo