Cómo comprobar si el usuario existe en PowerShell

Este tutorial demuestra cómo verificar si un usuario existe en PowerShell.
Verificar si el usuario existe en PowerShell
PowerShell proporciona un comando basado en el directorio activo, que se utiliza para comprobar si un usuario existe. Para usar este comando, primero debemos importar el módulo ActiveDirectory
; la sintaxis para este comando es la siguiente.
Get-ADUser
Ahora sigue los pasos a continuación para verificar si un usuario existe usando PowerShell:
-
Primero, necesitamos importar el módulo
ActiveDirectory
. Ejecuta el siguiente comando:Import-Module ActiveDirectory
-
Una vez que se importa el módulo, asignamos el nombre del usuario a una variable.
-
Luego, creamos una variable de usuario usando
Get-ADUser
en un bloquetry-catch
. -
Finalmente, comprobamos la variable de usuario usando la condición
if-else
para determinar si es nula o tiene algún valor. -
Ejecuta los siguientes comandos para los tres pasos anteriores:
$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"
}
El código anterior verificará al usuario en el directorio activo y mostrará la salida según el resultado. Ve la salida:
User not found in the Active Directory
También podemos verificar múltiples usuarios a la vez. Sigue los pasos a continuación para verificar si existen varios usuarios en el directorio activo o no:
-
Primero que nada, crea un objeto de usuarios que incluya todos los nombres de los usuarios.
-
Luego ejecuta un bucle
foreach
para verificar cada usuario. -
Usa bloques
try-catch
para verificar que cada usuario sea similar al método anterior. -
Usa la condición
if-else
para imprimir los resultados. Ve el comando basado en estos pasos.
$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"
}
}
¿Qué pasa si tenemos un gran número de usuarios para verificar? Podemos usar un archivo CSV con el comando Get-ADUser
para verificar a muchos usuarios.
Sigue los pasos a continuación:
-
Primero que nada, crea un objeto vacío de resultados.
-
Importa el CSV con los nombres de usuario.
-
Luego ejecuta un bucle
foreach
para verificar cada usuario. -
Usa bloques
try-catch
para verificar que cada usuario sea similar al método anterior. -
Usa la condición
if-else
para mostrar los resultados. Ve el comando basado en estos pasos.
$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
Nuestro archivo CSV contiene 20 nombres de diferentes usuarios. El código anterior verificará a cada usuario y mostrará true
si el usuario existe y mostrará false
si el usuario no existe.
Ve la salida:
UserName ExistUser
-------- ---------
False
False
False
False
False
False
False
False
False
False
False
False
False
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