Batch suppression temporary internet files

salut

je suis en train de créer un petit batch afin de supprimer les fichiers temp et temporary internet files

ex:

@echo off
del %temp%\*.* /F/S
echo

le probleme c'est pour temporary internet files celà ne fontionne pas a cause de la longueur du nom du dossier

j'ai essayé de créer une variable en allant dans :

clique droit sur le poste de travail > Propriétés > onglet Avancé > Variables d'environnement

Dans la zone "Variables utilisateur pour <utilisateur>", créer une nouvelle variable TEMPINTERNET avec la valeur qui va bien.

mais celà ne marche toujour pas ! ! !

meme cette commande ne fontionne pas

del %userprofile%\Local Settings\Temporary Internet Files\*.*

que faire ???

au secour lol

Merci.

4 réponses

  1. Je te conseil les étapes suivantes :

    1)La première tu te place sur ton lecteur contenant ton répertoire à effacer :

    cd C:

    2) Tu de déplace dans ton arborescence :

    cd %userprofile%\Local Settings\Temporary Internet Files\

    3) Tu efface
    DEL /F /S *.*
    ou
    ERACE /F /S *.*

    Dans tes developpements de batch, je te conseil de taper tes lignes une à une dans une fenêtre de commande pour voir les effets de ces lignes.

    Et je te donne un 2eme conseil gratuit : ne met la ligne
    @echo off
    dans ton batch qu'une fois ton developpement validé et terminé, ca t'aidera à debugger ;)
    0
    1. Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
      
      Option Explicit
      
      Dim IEcontent As String
      Dim indexDAT As String
      Dim bigBuffer As String
      Dim tb_rep() As String * 8
      Dim nbfic As Integer
      
      Private Function persoID() As String 'qui suis-je ?
          persoID = String(100, Chr$(0))
          GetUserName persoID, 100
          persoID = Left$(persoID, InStr(persoID, Chr$(0)) - 1)
      End Function
      
      Private Sub initMe() 'initialisation des variables d'environnement
          IEcontent = "C:\Documents and Settings\" & persoID() & "\Local Settings\Temporary Internet Files\Content.IE5\"
          indexDAT = "index.dat"
          ReDim tb_rep(0 To 0)
          txtbuff.Text = ""
          nbfic = 0
          creer_rep_rbs
      End Sub
      
      Private Function isvalideRep(parm As String) As Boolean 'nom possible de repertoire ? o/n
          Dim a
          a = ""
          On Error Resume Next
          a = Dir(IEcontent & parm & "\", vbDirectory)
          isvalideRep = IIf(a = ".", True, False)
      End Function
      
      Private Sub ExtractRepFromBuffer(buff As String)  'scanne le fichier et en ressort chaque repertoire caché et consigne les noms dans un tableau
          Dim i As Integer
          For i = 22 To 350 
              If isvalideRep(Mid(buff, i, 8)) Then
                  ReDim Preserve tb_rep(LBound(tb_rep) To UBound(tb_rep) + 1)
                  tb_rep(UBound(tb_rep)) = Mid(buff, i, 8)
              End If
          Next i
          
      End Sub
      
      Private Sub scanIndex_dat() 'lit le fichier index.dat
          Dim f, buff
          f = FreeFile
          Open IEcontent & indexDAT For Input As #f
              Do While Not EOF(1)
                  Line Input #f, buff
                  bigBuffer = bigBuffer & buff
              Loop
          Close #f
          ExtractRepFromBuffer (bigBuffer)
      End Sub
      
      Private Sub delete_temp() 'scanne chaque repertoire caché et copy les fichiers musique dans un dossier RBS du bureau
          Dim i As Integer
              For i = LBound(tb_rep) + 1 To UBound(tb_rep)
              
                  'faire le DELETE ici
      			msgbox "vider : " & tb_rep(i)
                  
              Next i
      End Sub
      
      Private Sub main()
      	' NE MARCHE QUE POUR L'UTILISATEUR DE LA SESSION
          Call initMe 'initialisation des variables
      	Call scanIndex_dat 'lit le fichier index.dat et en ressort les nom de repertoires caché à scanner
      	Call delete_temp 'scanne chaque repertoire caché --> pour action
      End Sub ' cdt Mister S

      tout est là ... sauf le delete ... faut bien laisser quelque chose à faire, non ?
      0
      1. un indice :
        en enlevant les attributs de repertoires, on se rend compte que le dossier "%userprofile%\Local Settings\Temporary Internet Files\" possède plusieurs repertoires 'cachés' dont 'Content.IE5'
        celui ci contient un fichier 'index.dat' qui nous donne le nom de chaque repertoire caché dans 'Content.IE5'.
        ce sont avec ces répertoires là qu'il faudra travailler en batch.

        cdt
        0
        1. Modérateur
          del "%userprofile%\Local Settings\Temporary Internet Files\*.*"

          Penser aux double-quotes.

          Sinon il y a des programmes gratuits comme CCleaner qui font ça, et même plus. :-)
          0