woraxor
Goto Top

Zeichen innerhalb von einem String entfernen

Hallo Zusammen,

ich möchte per Powershell bei uns im AD einige E-Mail Strings gerade ziehen.

Durch Historisch gewachsene Strukturen haben viele User im Feld E-Mail ein _ Zeichen. Dies wurde nach Rücksprache vor langer Zeit getätigt, da diese User bis dato keine Mailadresse hatten und dies nicht als Mail eingelesen wurde....

Jetzt zu meinem Problem:
ich habe z. B. eine Mail _test.user@company.com und möchte die Stelle _ einfach nur entfernen. Des Weiteren sollen alle Accounts die keinen _ haben unberührt bleiben.
hatte an einen Replace oder Split Befehl gedacht

Wie kann ich das am besten Angehen?

Viele Grüße

Content-ID: 4075867751

Url: https://administrator.de/forum/zeichen-innerhalb-von-einem-string-entfernen-4075867751.html

Printed on: February 9, 2025 at 17:02 o'clock

colinardo
Solution colinardo Sep 27, 2022 updated at 09:12:54 (UTC)
Goto Top
Servus @Woraxor.
Das ist schnell erledigt
Get-ADUser -Filter *  -Properties mail | ? mail -match '_' | %{Set-ADUser $_.SamAccountname -EmailAddress ($_.mail -replace '_') -verbose}  
Grüße Uwe
Powershell Leitfaden für Anfänger
3063370895
3063370895 Sep 27, 2022 at 09:35:28 (UTC)
Goto Top
Eventuell vor die letzte geschweifte Klammer ein -Whatif für einen Trockenlauf, um zu prüfen, ob auch das gemacht wird was man möchte.
colinardo
Solution colinardo Sep 27, 2022 updated at 09:51:49 (UTC)
Goto Top
Richtig. Und falls man es zusätzlich auf eine bestimmte Organisationseinheit einschränken möchte, einfach den -SearchBase Parameter im Get-ADUser CMDLet mit angeben.
Woraxor
Woraxor Sep 27, 2022 at 13:52:58 (UTC)
Goto Top
Hallo Colinardo,

Genau so habe ich es durchgeführt, Besten Dank für deine Hilfe -> Hatte nur etwas Zeit gebraucht um die Syntax nachzuvollziehen.

Gruß