Cherche les dossiers contenant le mot "Citrix" [VBS] - VB/VBA/VBS - Programmation
Marsh Posté le 04-08-2008 à 15:48:46
est ce que ca marche avec cette modification ?
Set fso = CreateObject("Scripting.FileSystemObject" )
dossier_a_chercher = "citrix"
cherche_dossier fso.GetFolder("C:\\scripts" ), dossier_a_chercher
' Rechercher un dossier
Sub cherche_dossier(un_dossier, dossier_a_chercher)
For Each un_sousdossier In un_dossier.SubFolders
If (mid(un_sousdossier.name,1,6) = dossier_a_chercher) Then
supp_dans_dossier un_sousdossier
End If
cherche_dossier un_sousdossier, dossier_a_chercher
Next
End Sub
' Supprimer le contenu d'un dossier
Sub supp_dans_dossier(un_dossier)
' Supprimer les sous-répertoires
For Each sf1 in un_dossier.SubFolders
If (MsgBox("Voulez-vous supprimer " & sf1.Path & " ?", 1) = 1) Then
fso.DeleteFolder(sf1.Path)
End If
Next
' Supprimer les fichiers
For Each f1 in un_dossier.Files
If (MsgBox("Voulez-vous supprimer " & f1.Path & " ?", 1) = 1) Then
fso.DeleteFile(f1.Path)
End If
Next
End Sub
Marsh Posté le 04-08-2008 à 15:37:23
Bonjour,
Pour un besoin spécifique, nous avons dans le profile de l'utilisateur un dossier de type: Citrix17X18V. Chaque utilisateur à un nom de dossier différent mais commencant toujours par "Citrix".
Je recherche un script pour pouvoir me faire cette recherche. J'ai trouvé un script qui permet de faire une recherche. Ca fonctionne quand le nom du dossier se nomme excatement Citrix. Sauf que dans ma situation les dossiers commencent par Citrix mais la suite est aléatoire.
Merci de votre aide
Set fso = CreateObject("Scripting.FileSystemObject" )
dossier_a_chercher = "citrix"
cherche_dossier fso.GetFolder("C:\\scripts" ), dossier_a_chercher
' Rechercher un dossier
Sub cherche_dossier(un_dossier, dossier_a_chercher)
For Each un_sousdossier In un_dossier.SubFolders
If (un_sousdossier.name = dossier_a_chercher) Then
supp_dans_dossier un_sousdossier
End If
cherche_dossier un_sousdossier, dossier_a_chercher
Next
End Sub
' Supprimer le contenu d'un dossier
Sub supp_dans_dossier(un_dossier)
' Supprimer les sous-répertoires
For Each sf1 in un_dossier.SubFolders
If (MsgBox("Voulez-vous supprimer " & sf1.Path & " ?", 1) = 1) Then
fso.DeleteFolder(sf1.Path)
End If
Next
' Supprimer les fichiers
For Each f1 in un_dossier.Files
If (MsgBox("Voulez-vous supprimer " & f1.Path & " ?", 1) = 1) Then
fso.DeleteFile(f1.Path)
End If
Next
End Sub