Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 2 sur 2
Aller à la page: <  1, 2
[Réglé] demande adaptation de script
Auteur Message
Répondre en citant
Message [Réglé] demande adaptation de script 
Revue du message précédent :

10 go ??? vraiment bizzare car j obtiens un tres bon résultat de mon coté

Visiter le site web du posteur
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [Réglé] demande adaptation de script 
Bah ce sont des scripts trouvés sur la toile donc après fiable ou non ?



Répondre en citant
Message [Réglé] demande adaptation de script 
tu as testé le mien ? http://batch.xoo.it/t2506-Detection-de-l-espace-disque-restant-sur-C.htm ???
donner dans le sujet, tu as aussi cette grosse différence ?

Il suffit de le travailler....et mettre un peu les mains dans le cambouis si tu veux uniquement le C.


Edit voiila mon vbs modifié pour faire uniquement la partition C:, le résultat est placé dans un fichier Freespace.txt

Code:

Set oFSO = CreateObject("Scripting.FileSystemObject")
OpenUser = "Freespace.txt"
Set oLogFile = oFSO.CreateTextFile(OpenUser, True)
Set objNetwork = CreateObject("Wscript.Network")
strComputer = objNetwork.ComputerName

oLogFile.Writeline " "
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery( _
    "SELECT * FROM Win32_LogicalDisk Where DeviceID = 'C:'",,48)
   
For Each objItem in colItems
'Fonction LEN Renvoie le nombre de caractères contenus dans une chaîne, ou le nombre d'octets requis pour mémoriser une variable

if LEN(objItem.Size) > 0 then oLogFile.Writeline objItem.DeviceID &"\ " & Convert(objItem.Freespace)
Next
oLogFile.Writeline " "



'creation d'une fonction de Convertion de octects en MegaOctect et Gigaoctect
Function Convert(varSize)
if varSize <= 1073741824 then      ' si la taille est inferieur à 1073741824 octecs (1 Go = 1024 Mo = 1024*1024 Ko = 1073741824 ) alors calcul en Mo
vartmp=round(varSize/1048576,2) & " Mo"
elseif varSize > 1073741824 then
vartmp=round(varSize/1073741824,2) &" Go" ' si taille est supérieur à 1 Go = 1024 Mo = 1024*1024 Ko = 1073741824 octets alors calcul en Go
end if
Convert=vartmp
end function
oLogFile.Close



Résultat :

Code:

C:\ 52.31 Go


voir aussi http://batch.xoo.it/t2506-Detection-de-l-espace-disque-restant-sur-C.htm#p1…




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message [Réglé] demande adaptation de script 
J'avais oublié, non celui ci affiche correctement !

J'ai déjà du mal en batch ou j'apprends pas mal alors apprendre un autre language à pars... Very Happy

Merci quand même Laddy



Répondre en citant
Message [Réglé] demande adaptation de script 
un fichier vbs peut etre utilisé en batch et les données peuvent être exploité.

Si tu disais à quoi vraiement ce batch sert on pourrait mieux t'orienter.

Code:
cscript.exe  tonfichier.vbs


Par contre je ne suis pas contente du fait d'avoir supprimé le code du 1er sujet, pour ceux qui suivent ce sujet là, il ne vont plus rien comprendre Twisted Evil Rolling Eyes




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message [Réglé] demande adaptation de script 
J'ai expliqué... Le batch à la base n'a aucun rapport avec ceci...

C'est moi qui souhaite vérifier l'espace disque totale et libre du disque dur avant de continuer le script batch (Permet d'installer un serveur de jeux qui a besoin de 2Go +/-)


Grâce à ton script, j'ai réussi ce que je voulais, je t'adore tu sais ! Embarassed Embarassed Razz

Code:

 Set oFSO = CreateObject("Scripting.FileSystemObject")
 OpenUser = "Freespace.txt"
 Set oLogFile = oFSO.CreateTextFile(OpenUser, True)
 Set objNetwork = CreateObject("Wscript.Network")
 strComputer = objNetwork.ComputerName
 
 oLogFile.Writeline " "
 Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
 Set colItems = objWMIService.ExecQuery( _
     "SELECT * FROM Win32_LogicalDisk Where DeviceID = 'C:'",,48)
    
 For Each objItem in colItems
 'Fonction LEN Renvoie le nombre de caractères contenus dans une chaîne, ou le nombre d'octets requis pour mémoriser une variable
 
 if LEN(objItem.Size) > 0 then oLogFile.Writeline objItem.DeviceID &"\ " &"Total " & Convert(objItem.Size)
 if LEN(objItem.Size) > 0 then oLogFile.Writeline objItem.DeviceID &"\ " &"Libre " & Convert(objItem.Freespace)
 
 Next
 oLogFile.Writeline " "
 
 'creation d'une fonction de Convertion de octects en MegaOctect et Gigaoctect
 Function Convert(varSize)
 REM if varSize <= 1073741824 then      ' si la taille est inferieur à  1073741824 octecs (1 Go = 1024 Mo = 1024*1024 Ko = 1073741824 ) alors  calcul en Mo
 REM vartmp=round(varSize/1048576,0) & " Mo"
 if varSize > 1073741824 then
 vartmp=round(varSize/1073741824,0) &" Go" ' si taille est supérieur à  1 Go = 1024 Mo = 1024*1024 Ko = 1073741824 octets alors calcul en Go
 end if
 Convert=vartmp
 end function
 oLogFile.Close


Je l'ai modifié un peu... J'ai ajouté pour avoir l'espace totale du disque et dans la sortie du .txt, j'y ai ajouté le texte pour pouvoir récupérer correctement avec une boucle for.

 
Code:
 for /f "tokens=2,3" %%A in ('type "Freespace.txt" ^| Find "Total"') do (
    set tailletotale=%%~B
    set tailletotale=!tailletotale!
    )
    echo Taille Totale du Disque C : !tailletotale! Go
pause
for /f "tokens=2,3" %%A in ('type "Freespace.txt" ^| Find "Libre"') do (
    set tailledispo=%%B
    set tailledispo=!tailledispo!
    )
    echo Taille Dispo du Disque C : !tailledispo! Go
pause

J'ai testé en modifiant les valeurs et le résultat est parfait même si le HDD fait moins de 100 Go.

Je te remercie mille fois !

Bonne journée.



Répondre en citant
Message [Réglé] demande adaptation de script 
Pour le script je l'avais basé sur ton autre sujet demandé mais à l'origine il mettait aussi l espace total.
AU moins une bonne chose de faite et avec exactitude ou presque.




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message [Réglé] demande adaptation de script 
oui seulement, j'avais mis de côté ne pensant pas reprendre mon idée et au final j'ai changé d'avis Smile



 
Citation:
 ou presque

Si tu veux d'autres explication, j'essaierais d'y répondre plus clairement.



Répondre en citant
Message [Réglé] demande adaptation de script 
Non c'est bon maintenant je sais que tu souhaitais obtenir l espace disque total et libre afin de poursuivre ton batch.




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message [Réglé] demande adaptation de script 
Ok Razz Wink

edit: j'avais pas fait gaffe, désolé, à l'avenir je laisserais le code !



Message [Réglé] demande adaptation de script 


Montrer les messages depuis:
Répondre au sujet Page 2 sur 2
Aller à la page: <  1, 2
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch