Wie man überprüft, ob ein Benutzer in PowerShell existiert

Wie man überprüft, ob ein Benutzer in PowerShell existiert

Dieses Tutorial demonstriert, wie man überprüft, ob ein Benutzer in PowerShell existiert.

PowerShell Überprüfen, ob ein Benutzer existiert

PowerShell bietet einen Befehl, der auf dem Active Directory basiert und verwendet wird, um zu überprüfen, ob ein Benutzer existiert. Um diesen Befehl zu verwenden, müssen wir zunächst das Modul ActiveDirectory importieren; die Syntax für diesen Befehl ist unten.

Get-ADUser

Befolgen Sie nun die folgenden Schritte, um zu überprüfen, ob ein Benutzer mit PowerShell existiert:

  • 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 Variable zu.
  • Dann erstellen wir eine Benutzer-Variable mit Get-ADUser in einem try-catch-Block.
  • Schließlich überprüfen wir die Benutzer-Variable mit der if-else-Bedingung, um festzustellen, ob sie null ist oder einen Wert hat.
  • Führen Sie die folgenden Befehle für die oben genannten 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 überprüft den Benutzer im Active Directory und gibt die Ausgabe basierend auf dem Ergebnis aus. Siehe die Ausgabe:

User not found in the Active Directory

Wir können auch mehrere Benutzer gleichzeitig prüfen. Folgen Sie den folgenden Schritten, um zu überprüfen, ob mehrere Benutzer im Active Directory existieren oder nicht:

  • Zuerst erstellen Sie ein Objekt von Benutzern, das die Namen aller Benutzer enthält.
  • Dann führen Sie eine foreach-Schleife aus, um jeden Benutzer zu überprüfen.
  • Verwenden Sie try-catch-Blöcke, um zu überprüfen, dass jeder Benutzer ähnlichen wie die oben beschriebene Methode ist.
  • Verwenden Sie die if-else-Bedingung, um die Ergebnisse auszudrucken. Sehen Sie den Befehl basierend auf diesen Schritten.
$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 zu überprüfen haben? Wir können eine CSV-Datei mit dem Befehl Get-ADUser verwenden, um viele Benutzer zu überprüfen.

Befolgen Sie die folgenden Schritte:

  • Zuerst erstellen Sie ein leeres Objekt für Ergebnisse.
  • Importieren Sie die CSV 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, dass jeder Benutzer ähnlich wie in der oben beschriebenen Methode ist.
  • Verwenden Sie die if-else-Bedingung, um die Ergebnisse anzuzeigen. Sehen Sie den Befehl basierend auf diesen Schritten.
$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 wird jeden Benutzer überprüfen und true ausgeben, wenn der Benutzer existiert, und false ausgeben, wenn der Benutzer nicht existiert.

Siehe die Ausgabe:

UserName ExistUser
-------- ---------
             False
             False
             False
             False
             False
             False
             False
             False
             False
             False
             False
             False
             False
Genießen Sie unsere Tutorials? Abonnieren Sie DelftStack auf YouTube, um uns bei der Erstellung weiterer hochwertiger Videoanleitungen zu unterstützen. Abonnieren
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