none
Powershell - Mudar resultado pesquisa Get-ADUser RRS feed

  • Pergunta

  • Bom dia Galera,

    Estou com uma duvida no Powershell e precisava da ajuda de vocês.

    Exemplo:

    Preciso saber se um determinado usuário do AD está Enable ou Disable. 

    Get-ADUser USER -Property SamAccountName,Enabled  | select SamAccountName,Enabled 

    Esse comando me retorna:

    SamAccountName = USER

    Enabled =  TRUE

    Até ai tudo bem, mas eu preciso que na saida do comando ao inves de está TRUE tem que estar ATIVO ou DESATIVADO. Exemplo:

    SamAccountName = USER

    Enabled=                             ATIVO

    Tem como fazer está mudança? 

    Desde já agradeço a ajuda.



    • Editado brncs terça-feira, 25 de agosto de 2015 12:16
    terça-feira, 25 de agosto de 2015 12:14

Respostas

  • Salve o conteúdo abaixo com o nome Get-ADUserAccountStatus.ps1 de sugestão e use os exemplos abaixo para gerar o resultado.

    Param($SAMAccountName = [Environment]::UserName) Function Get-StatusType { Param($Status) Switch($Status) { True {"Active"} False {"Non-Active"} } } ForEach ($SAMAcctName in $SAMAccountName) { Get-ADUser $SAMAccountName -Properties * | ` Select @{Name="SamAccountName";Expression={$_.SamAccountName}},@{Name="Status";Expression={Get-StatusType $_.Enabled}} }

    Exemplos

    C:\SHARED\Get-UserAccountStatus.ps1 C:\SHARED\Get-UserAccountStatus.ps1 -SAMAccountName Alvin.Holder Get-ADUser -Filter * | foreach {C:\SHARED\Get-UserAccountStatus.ps1 -SAMAccountName $_} Get-ADUser -Filter * -SearchBase "OU=ADMINS,OU=GLOBAL,OU=NSFW_CORP,DC=nosafeforwork,DC=net" | foreach {C:\SHARED\Get-UserAccountStatus.ps1 -SAMAccountName $_}

    É um código simples, então só precisa ler, entender e se necessário fazer as adaptações que desejar.

    • Editado 4HorsemenOfDaIT terça-feira, 25 de agosto de 2015 14:10
    • Marcado como Resposta brncs terça-feira, 25 de agosto de 2015 15:12
    terça-feira, 25 de agosto de 2015 14:09

Todas as Respostas

  • Salve o conteúdo abaixo com o nome Get-ADUserAccountStatus.ps1 de sugestão e use os exemplos abaixo para gerar o resultado.

    Param($SAMAccountName = [Environment]::UserName) Function Get-StatusType { Param($Status) Switch($Status) { True {"Active"} False {"Non-Active"} } } ForEach ($SAMAcctName in $SAMAccountName) { Get-ADUser $SAMAccountName -Properties * | ` Select @{Name="SamAccountName";Expression={$_.SamAccountName}},@{Name="Status";Expression={Get-StatusType $_.Enabled}} }

    Exemplos

    C:\SHARED\Get-UserAccountStatus.ps1 C:\SHARED\Get-UserAccountStatus.ps1 -SAMAccountName Alvin.Holder Get-ADUser -Filter * | foreach {C:\SHARED\Get-UserAccountStatus.ps1 -SAMAccountName $_} Get-ADUser -Filter * -SearchBase "OU=ADMINS,OU=GLOBAL,OU=NSFW_CORP,DC=nosafeforwork,DC=net" | foreach {C:\SHARED\Get-UserAccountStatus.ps1 -SAMAccountName $_}

    É um código simples, então só precisa ler, entender e se necessário fazer as adaptações que desejar.

    • Editado 4HorsemenOfDaIT terça-feira, 25 de agosto de 2015 14:10
    • Marcado como Resposta brncs terça-feira, 25 de agosto de 2015 15:12
    terça-feira, 25 de agosto de 2015 14:09
  • Excelente ... Muito obrigado Anderson.

    :D

    terça-feira, 25 de agosto de 2015 15:11