Archivo de salida CSV y comando net user no alineados con el comando PS.
A continuación, tengo un comando de PowerShell para obtener información útil del usuario. También quiero tener la entrada de un archivo CSV con nombres de PC. ¿Cómo puedo darle el mismo formato a todo?
Los dos puntos después del nombre del PC no es igual a lo que he obtenido de la salida de get-aduser
. ¿Alguien puede aconsejarme qué hacer?
Clear-Host
do {
Write-Host "Ingrese el ID de usuario: " -ForegroundColor Cyan -NoNewline
$UserName = Read-Host
Write-Host ""
Get-ADUser -Identity $Username -Properties * | Select-Object DisplayName, mail, LastLogonDate, LastBadPasswordAttempt, AccountExpirationDate, PasswordLastSet, OfficePhone, Department, Manager
$Processes = Import-CSV 'C:\Users\w0vlnd\Desktop\Powershells\Computers in a specific workgroup or domain.csv'
$processes | where "User ID" -like $Username | Select-Object "PC name"
net user $Username /domain | find "Password expires"
net user $Username /domain | find "Password changeable"
Write-Host "`n"
} while ($Username -notcontains $Processes)
davy.ai
Para darle el mismo formato a todo, puedes modificar la declaración
Select-Object
para incluir la información adicional del archivo CSV. Además, puedes usar el comandoFormat-Table
para alinear correctamente las columnas de salida. Aquí tienes un ejemplo:Observa que primero hemos almacenado la información del usuario en la variable
$Usuario
, y luego hemos filtrado la lista de computadoras en función de la variable$NombreUsuario
. Luego hemos seleccionado la columna ‘Nombre de la PC’ y formateado la salida usandoFormat-Table
. Finalmente, hemos mostrado la información del usuario junto con los nombres de las PCs asociadas utilizandoSelect-Object
y hemos agregado una propiedad calculada llamada ‘Nombre de la PC’ usando la variable$ComputadorasUsuario
del usuario. Una vez más, hemos utilizadoFormat-Table
para asegurarnos de que todas las columnas estén alineadas correctamente.