Created
November 15, 2020 18:19
-
-
Save raulunzue/6736c2c84ff15998d7db5929d91c9696 to your computer and use it in GitHub Desktop.
Powershell script para cambiar masivamente descripción grupo de active directory
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
######################################## | |
## RAUL UNZUE - ElBlogdeNegu | |
# Cambio nombre Grupo Directorio Activo | |
######################################## | |
# Saber el número de línea de un elemento | |
function linea | |
{$input | Select-String '.' | Select-Object LineNumber, Line} | |
# Ruta a la OU donde se generan los grupos por cada impresora | |
$OU_impresoras = "OU=IMPRESORAS,DC=NEGU,DC=LOCAL" | |
# Variable que contiene los nombre de todos los grupos de la OU anterior, que a su vez contienen los nombres de las impresoras ya creadas | |
get-adobject -Filter 'ObjectClass -eq "group"' -SearchBase $OU_impresoras -Properties Name | select Name > C:\Users\elblogdenegu\Desktop\gpimp_name.txt | |
# LIMPIAMOS FICHERO | |
(Get-Content C:\Users\elblogdenegu\Desktop\gpimp_name.txt) | foreach {$_ -replace "Name",""} | foreach {$_ -replace "----",""} | Set-Content C:\Users\elblogdenegu\Desktop\gpimp_name.txt | |
# PASAMOS A VARIABLE | |
$nombre_grupos_impresoras = (Get-Content C:\Users\elblogdenegu\Desktop\gpimp_name.txt) | |
# Variable que contiene las descripciones de todos los grupos de la OU anterior, que a su vez contienen los nombres de las impresoras ya creadas | |
get-adobject -Filter 'ObjectClass -eq "group"' -SearchBase $OU_impresoras -Properties Description | select Description > C:\Users\elblogdenegu\Desktop\gpimp_des.txt | |
# LIMPIAMOS FICHERO | |
(Get-Content C:\Users\elblogdenegu\Desktop\gpimp_des.txt) | foreach {$_ -replace "TEXTO Impresora ",""} | foreach {$_ -replace "Description",""} | foreach {$_ -replace "-----------",""} | Set-Content C:\Users\elblogdenegu\Desktop\gpimp_des.txt | |
# TRATAMOS EL DATO | |
$descripcion_impresoras = (Get-Content C:\Users\elblogdenegu\Desktop\gpimp_des.txt) | |
foreach ($g in $nombre_grupos_impresoras) { | |
$lineagrupo= (Get-Content "C:\Users\elblogdenegu\Desktop\gpimp_name.txt") | sls -Pattern $g | linea | |
$impresora= (Get-Content C:\Users\elblogdenegu\Desktop\gpimp_des.txt -TotalCount $lineagrupo.LineNumber)[-1] | |
Get-ADGroup -SearchBase $OU_impresoras -Filter {name -eq $g} -Properties Name,Description | set-adgroup -description "Impresora $impresora" | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment