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

VBScript Discussion :

Taille d'un partage et espace disque restant


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 30
    Par défaut Taille d'un partage et espace disque restant
    Bonjour,

    N'y connaissant rien, je viens de lire, relire, tester un lot de codes différents récupérés sur des forums divers et variés mais je n'arrives définitivement pas à trouver mon bonheur ....

    Je suis à la recherche d'un script capable de me donner la taille (en Mo si possible) d'un partage sur le disque d'un serveur distant.

    En résumé :
    Pour un partage que le script me demanderait à son éxécution (ex : \\serveur1\partage1\) j'aimerai pouvoir récupérer la taille totale du contenu de 'partage1' ainsi que l'espace disque restant.

    Que si 'partage1' = C:\plusbas\partage1\ = 500Mo
    Que C:\ = 1Go
    Qu'il me renvoi les valeurs = Votre partage fait 500Mo et il reste 500Mo sur le disque C:\ du serveur.

    Est-ce possible ? Compliqué ?

    Merci d'avance pour votre retour d'expérience.

    Boueep

    [EDIT] Même que si je pouvais mettre une liste de partage dans un fichier annexe ce serait parfait ! [/EDIT]

  2. #2
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut

    Voici une petite piste:
    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
    Call EspaceDisque
    Sub EspaceDisque
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
    Lecteur=""
    Set Disques = objWMIService.ExecQuery ("Select * from Win32_LogicalDisk Where DriveType = 3")
    For Each objetDisque in Disques
    	EspaceLibre = objetDisque.FreeSpace
    	EspaceTotal = objetDisque.Size
    	EspaceLibrePc = EspaceLibre / EspaceTotal
    	Lecteur=Lecteur & "Lecteur " & objetDisque.DeviceID & vbCR
    	Lecteur=Lecteur & "Espace total : " & round(EspaceTotal/1048576,2) & " Mo" & vbcr 'Taille en Mo avec 2 chiffres après la virgule
    	Lecteur=Lecteur & "Espace libre : " & round(EspaceLibre/1048576,2) & " Mo"  & " (" & FormatPercent(EspaceLibrePc) &")" & vbcr & vbcr
    Next
    MsgBox Lecteur,64,"Espace Disque"
    end Sub

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 30
    Par défaut
    Bonjour et merci beaucoup ... je vais creuser avec cette bonne piste !

    A tout hasard, puisque j'ai pas mal avancer sur le "listage" de mes partages et que je rencontre un petit problème ...

    Auriez-vous un tuyau pour que d'après ce code :

    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
     
    Dim ScriptPath, FSys, EntryPath, f, MyFic
     
    Const ForReading = 1
     
    Set FSys= CreateObject("Scripting.FileSystemObject")
     
    ScriptPath = Left(Wscript.ScriptFullName, InStrRev(Wscript.ScriptFullName, "\"))
    EntryPath = ScriptPath & "entry.txt"
     
    Set f = FSys.OpenTextFile(EntryPath, ForReading)
     
      while Not f.AtEndOfStream 
     
    strComputer = f.ReadLine
     
    Set objWMIService = GetObject("winmgmts:" _
        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2" )
    Set colShares = objWMIService.ExecQuery("Select * from Win32_Share" )
     
    If FSys.FileExists(ScriptPath & "\Partages_" & strComputer & ".txt") Then
    FSys.DeleteFile(ScriptPath & "Partages_" & strComputer & ".txt")
     
    End If
     
    Set MyFic = FSys.CreateTextFile(ScriptPath & "\Partages_" & strComputer & ".txt", ForWriting,true)
     
    For each objShare in colShares
            MyFic.write ("\\" & strComputer & "\" & objShare.Name & "\") & vbCrLf
     
    Next
     
     
    Wend
      f.Close
    Qui, je vous l'accorde, n'est pas beau pour tout oeil de scripteur (ce qui n'est pas mon cas), puisse me permettre de mettre dans mon "entry.txt" autre chose que des noms de serveurs Windows ?

    Merci d'avance pour votre aide car je sèche.

    Boueep

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Commande dos qui nous envoie l'espace disque restant
    Par soulsidibe dans le forum Autres Logiciels
    Réponses: 14
    Dernier message: 09/06/2011, 00h09
  2. Espace disque restant
    Par cob59 dans le forum Débuter
    Réponses: 2
    Dernier message: 27/10/2010, 14h52
  3. [Batch] Espace disque restant
    Par urchin27 dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 06/08/2009, 12h46
  4. Espace disque restant
    Par Dikmas dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 05/11/2008, 13h35
  5. [Système] Espace disque restant sur le serveur
    Par elfugu dans le forum Langage
    Réponses: 2
    Dernier message: 23/04/2007, 18h57

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