Benutzer-Werkzeuge

Webseiten-Werkzeuge


thunderbird-caching-abschalten.ps1

# Wähle die prefs.js des Benutzers default. Nur diese wird bearbeitet.
# Wird keine gefunden, macht das Skript nichts.
$pfad = (Get-ChildItem $Env:appdatathunderbirdprofiles  | Where-Object {$_.Name -match "(default)"}).fullname
$Datei = Get-ChildItem "$pfadprefs.js"
 
$Aenderung = 0;
 
#Es werden nur 50 Mailkonten berücksichtigt. Mehr sollte keiner haben :o)
for($a = 1; $a -lt 50; $a++){
 #Existiert ein Mailkonto mit dieser Nummer:
 if ($Datei | Select-String -pattern "(mail.server.server$a)" ){
 #Ist für dieses Mailkonto der offline_download-Eintrag nicht vorhanden, lege ihn an
 #Einträge, wo der Parameter von offline_download auf true steht, gibt es nicht, da thunderbird so einen Eintrag
 #aus der Config löschen würde
 if (!($Datei | Select-String -pattern "(mail.server.server$a.offline_download)" )){
 'user_pref("mail.server.server'+$a+'.offline_download", false);' | Out-File -FilePath $Datei -encoding Default -Append
 $Aenderung = 1;
 }
 }
} 
 
#Schalte die globale SQL-Suche ab:
#Einträge, wo der Parameter von indexer.enabled auf true steht, gibt es nicht, da thunderbird so einen Eintrag
#aus der Config löschen würde
if ( !($Datei | Select-String -pattern "(mailnews.database.global.indexer.enabled)" )){
 'user_pref("mailnews.database.global.indexer.enabled", false);' | Out-File -FilePath $Datei -encoding Default -Append
 $Aenderung = 1;
}
 
if($Aenderung){
 
 #Lösche die Datei global-messages-db.sqlite
 #Diese wird zwar neu angelegt, bleibt aber < als 1MB
 Remove-Item "$pfadglobal-messages-db.sqlite"
 
 #Lösche den IMAP-Ordner bis auf die msgFilterRules.dat-Dateien. Verzeichnise bleiben erhalten
 $ImapDateien = (Get-ChildItem "$pfadImapMail" -exclude 'msgFilterRules.dat', *.msf -Recurse | where {! $_.PSIsContainer})
 $ImapDateien | Remove-Item
}
Siehe: http://www.hp-dv-systeme.de/thunderbird-caching-in-prefs-js-automatisch-abschalten/

thunderbird-caching-abschalten.ps1.txt · Zuletzt geändert: 2017/03/17 11:37 (Externe Bearbeitung)