Überprüfen Sie, ob der Benutzer in PowerShell vorhanden ist

Sheeraz Gul 20 Juni 2023
Überprüfen Sie, ob der Benutzer in PowerShell vorhanden ist

Dieses Tutorial zeigt, wie Sie überprüfen, ob ein Benutzer in PowerShell vorhanden ist.

PowerShell-Prüfung, ob Benutzer vorhanden ist

PowerShell stellt auf Basis des Active Directory einen Befehl bereit, mit dem geprüft wird, ob ein Benutzer existiert. Um diesen Befehl zu verwenden, müssen wir zuerst das Modul ActiveDirectory importieren; Die Syntax für diesen Befehl ist unten.

Get-ADUser

Führen Sie nun die folgenden Schritte aus, um mithilfe von PowerShell zu überprüfen, ob ein Benutzer vorhanden ist:

  • Zuerst müssen wir das Modul ActiveDirectory importieren. Führen Sie den folgenden Befehl aus:
    Import-Module ActiveDirectory
    
  • Sobald das Modul importiert ist, weisen wir den Benutzernamen einer Variablen zu.
  • Dann erstellen wir eine Benutzervariable mit dem Get-ADUser in einem try-catch-Block.
  • Schließlich überprüfen wir die Benutzervariable mit der Bedingung if-else, um festzustellen, ob sie null ist oder einen Wert hat.
  • Führen Sie die folgenden Befehle für die obigen drei Schritte aus:
$UserName = "Sheeraz"
$CheckUser = $(try {Get-ADUser $UserName} catch {$null})
If ($CheckUser -ne $Null) {
"User exists in the Active Directory"
} Else {
"User not found in the Active Directory"}

Der obige Code sucht nach dem Benutzer im Active Directory und druckt die Ausgabe basierend auf dem Ergebnis. Siehe die Ausgabe:

User not found in the Active Directory

Wir können auch mehrere Benutzer gleichzeitig überprüfen. Führen Sie die folgenden Schritte aus, um zu überprüfen, ob mehrere Benutzer im Active Directory vorhanden sind oder nicht:

  • Erstellen Sie zunächst ein Benutzerobjekt, das alle Benutzernamen enthält.
  • Führen Sie dann eine foreach-Schleife aus, um jeden Benutzer zu überprüfen.
  • Verwenden Sie try-catch-Blöcke, um zu überprüfen, ob jeder Benutzer der obigen Methode ähnlich ist.
  • Verwenden Sie die Bedingung if-else, um die Ergebnisse auszudrucken. Sehen Sie sich den Befehl an, der auf diesen Schritten basiert.
$CheckUsers = @("Sheeraz", "Jhon", "Mike")
foreach ($CheckUser in $CheckUsers) {
$UserObject = $(try {Get-ADUser $CheckUser} catch {$Null})
If ($UserObject -ne $Null) {
    Write-Host "The user $CheckUser already exists" -foregroundcolor "green"
} else {
    Write-Host "The user $CheckUser does not exists " -foregroundcolor "red"
}}

Was ist, wenn wir eine große Anzahl von Benutzern überprüfen müssen? Wir können eine CSV-Datei mit dem Befehl Get-ADUser verwenden, um viele Benutzer zu überprüfen.

Folgen Sie den unteren Schritten:

  • Erstellen Sie zunächst ein leeres Ergebnisobjekt.
  • Importieren Sie die CSV-Datei mit Benutzernamen.
  • Führen Sie dann eine foreach-Schleife aus, um jeden Benutzer zu überprüfen.
  • Verwenden Sie try-catch-Blöcke, um zu überprüfen, ob jeder Benutzer der obigen Methode ähnlich ist.
  • Verwenden Sie die Bedingung if-else, um die Ergebnisse anzuzeigen. Sehen Sie sich den Befehl an, der auf diesen Schritten basiert.
$UsersResult=@()
Import-Csv 'C:\Users\Admin\demo.csv' | ForEach-Object {
$CheckUser = $_."UserName"
$UserObject = $(try {Get-ADUser $CheckUser} catch {$Null})
If ($UserObject -ne $Null) {
$ExistUser = $true
} else {
$ExistUser = $false
}
$UsersResult += New-Object PSObject -property @{
UserName = $CheckUser
ExistUser = $ExistUser }
}
$UsersResult | Select UserName, ExistUser

Unsere CSV-Datei enthält 20 Namen verschiedener Benutzer. Der obige Code prüft jeden Benutzer und gibt true aus, wenn der Benutzer existiert, und false, wenn der Benutzer nicht existiert.

Siehe die Ausgabe:

UserName ExistUser
-------- ---------
             False
             False
             False
             False
             False
             False
             False
             False
             False
             False
             False
             False
             False
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

Verwandter Artikel - PowerShell User