[Vbs- Ps] Lister les fichiers d"un certain type dans une arborescence
6 réponses
Eric Galais
Bonjour tout le monde,
Je m'occupe d'un déploiement de lotus sur 2500 machines et je me tappe
régulierement des controles à faires à la main.
J'ai scripté un grand nombre d'opérations mais par manque de temps je fais
appel à vous.
Actuellement, je récupère les infos suivante:
- Chemins du prog et data de lotus
- Vérif présence notes.ini dans la partie prog (ca veut dire install mono
user)
- Récupération de la variable KeyFilename pour avoir le chemin et nom de son
ID lotus.
- Vérif si l'id est dans le rép data de lotus.
J'aimerais en VBS récupérer la taille totale de tous les fichiers NSF du
répertoire data de lotus, sous-répertoires compris.
J'arrive a gérer un répertoire mais pas la sous arborescence.
Set colFileList = objWMIService.ExecQuery _
("ASSOCIATORS OF {Win32_Directory.Name='D:\Notes\data'} Where
ResultClass = CIM_DataFile")
filesize1 = 0
For Each objFile In colFileList
if objFile.extension = "nsf" Then
filesize1 = filesize1 + objFile.FileSize
End If
Next
total_size1= filesize1 / 1048576
-------------------------------------------
Possible d'avoir un coup de main svp?
Ou alors en Powershell en script séparé vu que je pense passer rapidement au
powershell.
Mon script principal faisant 170 lignes j'évite de vous le coller ici mais
si besoin je m'exécute.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jacques Barathon [MS]
"Eric Galais" wrote in message news: ...
J'aimerais en VBS récupérer la taille totale de tous les fichiers NSF du répertoire data de lotus, sous-répertoires compris. J'arrive a gérer un répertoire mais pas la sous arborescence.
Set colFileList = objWMIService.ExecQuery _ ("ASSOCIATORS OF {Win32_Directory.Name='D:Notesdata'} Where ResultClass = CIM_DataFile") filesize1 = 0 For Each objFile In colFileList if objFile.extension = "nsf" Then filesize1 = filesize1 + objFile.FileSize End If Next total_size1= filesize1 / 1048576
-------------------------------------------
Possible d'avoir un coup de main svp?
Ou alors en Powershell en script séparé vu que je pense passer rapidement au powershell.
Bonne idée :-)
En PowerShell, ça donnerait ceci en une seule ligne (je le précise car je suppose que la ligne qui suit sera coupée au montage):
Cela dit, la requête WMI sera sans doute beaucoup plus performante si le nombre de fichiers est très important. A tester...
Jacques
"Eric Galais" <galais.eric@free.fr> wrote in message
news:uelFhiE0HHA.5772@TK2MSFTNGP02.phx.gbl...
...
J'aimerais en VBS récupérer la taille totale de tous les fichiers NSF du
répertoire data de lotus, sous-répertoires compris.
J'arrive a gérer un répertoire mais pas la sous arborescence.
Set colFileList = objWMIService.ExecQuery _
("ASSOCIATORS OF {Win32_Directory.Name='D:Notesdata'} Where
ResultClass = CIM_DataFile")
filesize1 = 0
For Each objFile In colFileList
if objFile.extension = "nsf" Then
filesize1 = filesize1 + objFile.FileSize
End If
Next
total_size1= filesize1 / 1048576
-------------------------------------------
Possible d'avoir un coup de main svp?
Ou alors en Powershell en script séparé vu que je pense passer rapidement
au powershell.
Bonne idée :-)
En PowerShell, ça donnerait ceci en une seule ligne (je le précise car je
suppose que la ligne qui suit sera coupée au montage):
J'aimerais en VBS récupérer la taille totale de tous les fichiers NSF du répertoire data de lotus, sous-répertoires compris. J'arrive a gérer un répertoire mais pas la sous arborescence.
Set colFileList = objWMIService.ExecQuery _ ("ASSOCIATORS OF {Win32_Directory.Name='D:Notesdata'} Where ResultClass = CIM_DataFile") filesize1 = 0 For Each objFile In colFileList if objFile.extension = "nsf" Then filesize1 = filesize1 + objFile.FileSize End If Next total_size1= filesize1 / 1048576
-------------------------------------------
Possible d'avoir un coup de main svp?
Ou alors en Powershell en script séparé vu que je pense passer rapidement au powershell.
Bonne idée :-)
En PowerShell, ça donnerait ceci en une seule ligne (je le précise car je suppose que la ligne qui suit sera coupée au montage):
Cela dit, la requête WMI sera sans doute beaucoup plus performante si le nombre de fichiers est très important. A tester...
Jacques
Impec, merci Jacques
Gilles LAURENT [MVP]
"Eric Galais" a écrit dans le message de news: | Bonjour tout le monde,
Bonjour,
[...] | J'aimerais en VBS récupérer la taille totale de tous les fichiers NSF | du répertoire data de lotus, sous-répertoires compris. | J'arrive a gérer un répertoire mais pas la sous arborescence.
Ci-dessous le lien vers le script VBScript DirSlashS.vbs permettant de parcourir de manière récursive les sous-dossiers d'un dossier racine spécifié: > cscript DirSlashS.vbs *.nsf
"Eric Galais" <galais.eric@free.fr> a écrit dans le message de
news:uelFhiE0HHA.5772@TK2MSFTNGP02.phx.gbl
| Bonjour tout le monde,
Bonjour,
[...]
| J'aimerais en VBS récupérer la taille totale de tous les fichiers NSF
| du répertoire data de lotus, sous-répertoires compris.
| J'arrive a gérer un répertoire mais pas la sous arborescence.
Ci-dessous le lien vers le script VBScript DirSlashS.vbs permettant de
parcourir de manière récursive les sous-dossiers d'un dossier racine
spécifié:
> cscript DirSlashS.vbs *.nsf
Le script DirSlashS.vbs :
http://groups.google.fr/group/microsoft.public.fr.scripting/msg/f41c826480b50631?hl=fr
Il ne vous reste plus qu'à insérer un compteur de taille :
TSize = TSize + oFile.Size
"Eric Galais" a écrit dans le message de news: | Bonjour tout le monde,
Bonjour,
[...] | J'aimerais en VBS récupérer la taille totale de tous les fichiers NSF | du répertoire data de lotus, sous-répertoires compris. | J'arrive a gérer un répertoire mais pas la sous arborescence.
Ci-dessous le lien vers le script VBScript DirSlashS.vbs permettant de parcourir de manière récursive les sous-dossiers d'un dossier racine spécifié: > cscript DirSlashS.vbs *.nsf
"Gilles LAURENT [MVP]" a écrit dans le message de news: %
"Eric Galais" a écrit dans le message de news: | Bonjour tout le monde,
Bonjour,
[...] | J'aimerais en VBS récupérer la taille totale de tous les fichiers NSF | du répertoire data de lotus, sous-répertoires compris. | J'arrive a gérer un répertoire mais pas la sous arborescence.
Ci-dessous le lien vers le script VBScript DirSlashS.vbs permettant de parcourir de manière récursive les sous-dossiers d'un dossier racine spécifié: > cscript DirSlashS.vbs *.nsf
"Gilles LAURENT [MVP]" <glsft@free.fr> a écrit dans le message de news:
%23LL204S1HHA.3640@TK2MSFTNGP06.phx.gbl...
"Eric Galais" <galais.eric@free.fr> a écrit dans le message de
news:uelFhiE0HHA.5772@TK2MSFTNGP02.phx.gbl
| Bonjour tout le monde,
Bonjour,
[...]
| J'aimerais en VBS récupérer la taille totale de tous les fichiers NSF
| du répertoire data de lotus, sous-répertoires compris.
| J'arrive a gérer un répertoire mais pas la sous arborescence.
Ci-dessous le lien vers le script VBScript DirSlashS.vbs permettant de
parcourir de manière récursive les sous-dossiers d'un dossier racine
spécifié:
> cscript DirSlashS.vbs *.nsf
Le script DirSlashS.vbs :
http://groups.google.fr/group/microsoft.public.fr.scripting/msg/f41c826480b50631?hl=fr
Il ne vous reste plus qu'à insérer un compteur de taille :
TSize = TSize + oFile.Size
"Gilles LAURENT [MVP]" a écrit dans le message de news: %
"Eric Galais" a écrit dans le message de news: | Bonjour tout le monde,
Bonjour,
[...] | J'aimerais en VBS récupérer la taille totale de tous les fichiers NSF | du répertoire data de lotus, sous-répertoires compris. | J'arrive a gérer un répertoire mais pas la sous arborescence.
Ci-dessous le lien vers le script VBScript DirSlashS.vbs permettant de parcourir de manière récursive les sous-dossiers d'un dossier racine spécifié: > cscript DirSlashS.vbs *.nsf