Menu

<< | Zurück

INetCache löschen

Im Terminalserver / Client, Lokale oder in andere virtualisierte Umgebungen kommt es immer wieder zu übergrossen Benutzerprofile die bis 100 GB gross werden. Meistens wird dies durch Internet Daten (Internet Verlauf, Internet Bild Dateien, Formular Daten usw.) verursacht. Bezüglich dem kann hier ein Powershell Script runtergeladen werden oder diese Text im Rahmen kopieren danach in neue Datei einfügen, Dateiendung muss "ps1" enden. 

Skript sollte im Windows Task Scheduler aufgenommen werden so dass dies einmal zum Beispiel Nachts ausgeführt wird so, dass zum Beispiel auf dem Server dort wo Terminal Benutzer Profile liegen oder dort wo die Roaming Profile befinden das Skript  bestimmte Verzeichnisse ausliesst und in allen Benutzer Profile bezüglich Intetcache Verzeichnis, alle Temporäre Internet Daten gelöscht werden. Bezüglich Horizon Umgebungen müssen vorher alle Benutzer VDI Dateien geöffnet werden, weil in diesen Dateien die App Verzeichnis sich befinden, danach zwischen gespechert werden um darin alle InetCache Daten mit diesem Skript löschen zu können.
Download Powershell Datei: all_user_del_inetcache_V6.ps1
Fragen: anleitung@new-itsupport.ch

#Start-Transcript -Path 'C:\log.txt'
Start-Transcript -Path 'C:\all_user_del_inetcache_V6_log.txt'
Write-Host -ForegroundColor yellow "#######################################################"
""
Write-Host -ForegroundColor Green "Powershell commands to delete cache & cookies in Firefox, Chrome & IE browsers, InetCache and RECYCLE.BIN and output c\logfiletxt"
Write-Host -ForegroundColor Green "Meine Firma AG"
Write-Host -ForegroundColor Green "VERSION: 6"
""
Write-Host -ForegroundColor yellow "#######################################################"
""
#####################################Info start
    #### Beschreibung script start
    #Script löscht inetcache von allen benutzern.
    #Am Anfang wird eine user Liset erstellt und in exceldatei importiert. Anhand diser Liste wird in jedem Benutzerverzeichnis, in diesem Beispiel, der Ordner InetCache geleert.
    #Es können zusätzlich auch andere gewünschte Verzeichnisse angehängt werden._
    #Wenn es sich um Benutzerorner im userverzeichnis handelt muss das "C:\Users\$($_.Name)\hierordnername" beachtet werden._
    #Sollte das Benutzerverzeichnis an einem anderen Ort sich befinden dann muss überall das (C:\Users\) angepasst werden. In allen drei Teilen._
    # Es kann auch eine eigene Gruppe erstellt werden Betreff der Übersicht. Kopiere einfach, von mit module start bis und mit module ende. Dann an module 1 unten anhängen.
    #Am Schluss wird der Papierkorb gelöscht hier deaktivieren (Auskomentiert).
    #Wenn immer wieder im Log die gleichen Zeilen erscheinen dann kann das Script die Datei nicht löschen weil gesperrt ist. 
    #Das Ziel ist es diesen Script in Schedule Task einzufügen und immer z.b um 2:00 Uhr laufen zu lassen.
    #### Beschreibung script ende
    #Parameter Beschreibung start
    #-Recurse         = Parameter, im Unterverzeichnis wiederholen
    #-Force           = Hier sollte man wissen was man tut.Wird durchgeführ auch bei schreibgeschützte Objekte
    #-EA              = error action (z.b hier für SilentlyContinue)
    #-Verbose         = Nachrichtenstrom anzeigen
    #-ForegroundColor = Wird für die Darstellung im cmd powershell benötigt. output über -verbose mit farblichen Text. Nur Darstellung.
    #Parameter Beschreibung ende
######################################Info ende
"-------------------"
Write-Host -ForegroundColor Green "SECTION 1: User List erstellen."
"-------------------"
# Write Information to the screen
Write-Host -ForegroundColor yellow "Exporting the list of users to c:\users\%username%\users.csv"
# List the users in c:\users and export to the local profile for calling later
dir C:\Users | select Name | Export-Csv -Path C:\users\$env:USERNAME\users.csv -NoTypeInformation
$list=Test-Path C:\users\$env:USERNAME\users.csv
""
#########################
"-------------------"
Write-Host -ForegroundColor Green "SECTION 2: Starte Script..."
"-------------------"
if ($list) {
    #"-------------------Modul start"
    Write-Host -ForegroundColor Green "SECTION 3: InetCache Ordner leeren."
    Write-Host -ForegroundColor cyan
    Import-CSV -Path C:\users\$env:USERNAME\users.csv | foreach {
            #Remove-Item -path "C:\Users\$($_.Name)\AppData\Local\Microsoft\Windows\Temporary Internet Files\*" -Recurse -Force -EA SilentlyContinue -Verbose
            #Remove-Item -path "C:\Users\$($_.Name)\AppData\Local\Microsoft\Windows\WER\*" -Recurse -Force -EA SilentlyContinue -Verbose
            #Remove-Item -path "C:\Users\$($_.Name)\AppData\Local\Temp\*" -Recurse -Force -EA SilentlyContinue -Verbose
            Write-Host -ForegroundColor yellow "#######################################################"
            Write-Host -ForegroundColor Green 'Benutzer:' $_.Name
            Write-Host -ForegroundColor yellow "#######################################################"
            Remove-Item -path "C:\Users\$($_.Name)\AppData\Local\Microsoft\Windows\INetCache\*" -Recurse -Force -EA SilentlyContinue -Verbose
            #Remove-Item -path "C:\Windows\Temp\*" -Recurse -Force -EA SilentlyContinue -Verbose
            #Remove-Item -path "C:\$Recycle.Bin\*" -Recurse -Force -EA SilentlyContinue -Verbose
            }

    Write-Host -ForegroundColor yellow "Done..."
    ""
    #"-------------------Modul module Ende"
    Write-Host -ForegroundColor Green "Alle Tasks erfolgreich beendet!"
    } else {
    Write-Host -ForegroundColor Yellow "Achtung: Sitzung abgebrochen"
    Exit
    }

   #"-------------------"
   # # Clear recyclebin
   # Write-Host "SECTION 6: Clearing recyclebin"
   #"-------------------"
    ## recyclebin delet
    ##Get-ChildItem -Path 'C:\$Recycle.Bin' -Force | Remove-Item -Recurse -ErrorAction SilentlyContinue
    ##Dieses Beispiel unten zwei Zeilen ist besser weil keine laufwerksangaben
    #$recycleBin = (New-Object -ComObject Shell.Application).NameSpace(0xa)
    #$recycleBin.Items() | ForEach-Object -Process { Remove-Item -Path $_.Path -Force -Recurse }
    ## recyclebin delet ende
    #Write-Host -ForegroundColor Green "SECTION 4: Excel Datei (User List) wird gelösch da nicht mehr benötigt wird für den Script"
    #Remove-Item C:\Users\Administrator\users.csv -Verbose
    Stop-Transcript