chris123
Goto Top

Outlook Signatur mit Powershell ändern

Hallo zusammen,

wir ziehen um und aus diesem Grund müssen sämtliche Signaturen geändert werden.
Die User arbeiten auf Terminalservern und hier liegen die Signaturen unter "C:\Users\Username\AppData\Roaming\Microsoft\Signatures". In diesem Ordner sind die Signaturen in drei Dateiformaten vorhanden (*.html, *.rtf, *.txt)

Nun möchte ich einen Task mit Powershell-Skript erstellen, welches bei jedem User beim Start der Session auf dem TS ausgeführt wird. Das Skript soll in den oben genannten Ordner gehen und in den drei Dateien nach einem bestimmten Text suchen und diesen ersetzen.

Wer kann und möchte mir dabei helfen?

Vielen Dank
Chris

Content-ID: 352836

Url: https://administrator.de/contentid/352836

Ausgedruckt am: 17.11.2024 um 05:11 Uhr

em-pie
Lösung em-pie 25.10.2017 um 16:35:10 Uhr
Goto Top
Moin,

Wer suchet der findet:
https://stackoverflow.com/questions/31010480/replacing-contents-of-a-tex ...
https://www.google.de/search?q=Powershell+replace+String+in+File

und vermutlich hier in den hiesigen Beiträgen, habe auf die schnelle aber nichts gefunden...

GRuß
em-pie
colinardo
Lösung colinardo 25.10.2017 aktualisiert um 19:00:30 Uhr
Goto Top
$StringToReplace = '<Platzhalter>'  
$ReplaceWith = "<Ersetzung>"  
gci "$env:APPDATA\Microsoft\Signatures\*" -Include '*.html','*.txt' | ?{!$_.PSIsContainer -and (select-string -Path $_.Fullname -Pattern $StringToReplace -SimpleMatch -Quiet)} | %{  
    write-host "Replacing match in file '$($_.Fullname)'" -F Green  
    (gc $_.Fullname).replace($StringToReplace,$ReplaceWith) | sc $_.Fullname
}
Achtung, RTF besitzt spezielle Steuerzeichen für diverse Zeichen, bitte beachten, obiges Skript includiert sie deswegen nicht! Du kannst das RTF-File stattdessen löschen, es wird dann automatisch von der HTML-Datei neu erstellt wenn es von Outlook benötigt wird.

Grüße Uwe
chris123
chris123 28.10.2017 um 01:01:44 Uhr
Goto Top
Vielen Dank für Deine Hilfe!