none
Script para mover determinadas conta para OUs especificas. RRS feed

  • Pergunta

  • Boa tarde a todos,

     

    Pesquisei muito por aqui e não encontrei nada a respeito, alguém teria uma dica ai de script para mover algumas contas para suas respectivas OUs?

    Exemplo:

    O usuário Fulano de Tal, tem preenchido como "Fiscal" no atributo Departamento mais a conta do Fulano de Tal encontra-se na OU RH, precisaria de um script para mover todos os usuários que possuirem no atributo Departamento preenchido como "Fiscal" para a OU Fiscal, e se caso o mesmo já se encontre na OU correta, ignora-lo, é possível?

    Obrigado a atenção!


    Bruno.
    segunda-feira, 3 de outubro de 2011 19:57

Respostas

  • Tente uma destas duas alternativas

    1) Usando DSMOVE USER (veja que acrescentei um parametro)

    dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User)(department=Teste123))" |  dsmove user -newparent "ou=DPTO,ou=Unidades Administrativas,ou=Geral,dc=meudominio,dc=local"
    

     

    2) Jogando os usuário para dentro de um arquivo antes (coloque dentro de um .BAT)

    dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User)(department=Teste123))" > usuarios.txt
    
    
    for /f "Tokens=*" %%u in (usuarios.txt) do dsmove %%u -newparent "ou=DPTO,ou=Unidades Administrativas,ou=Geral,dc=meudominio,dc=local"
    

     

    Outra coisa: A sua OU de destino tem espaço no nome, coloque-a entre "aspas"

    Não tive como testar estes comandos.


    Fábio de Paula Junior
    segunda-feira, 3 de outubro de 2011 23:31
    Moderador

Todas as Respostas

  • Nunca utilizei, mas deve funcionar. Apenas altere o caminho da OU de destino pois não seu o caminho LDAP da sua OU.

    dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User)(department=Fiscal))" |  dsmove -newparent ou=Fiscal,dc=seudominio,dc=com
    


    Fábio de Paula Junior
    segunda-feira, 3 de outubro de 2011 20:17
    Moderador
  • Obrigado, vou testar no ambiente de homologação e volto aqui para informar o resultado!
    Bruno.
    segunda-feira, 3 de outubro de 2011 20:19
  • Fabio,

     

    Fiz dessa forma:

    dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User)(department=Teste123))" |  dsmove -newparent ou=DPTO,ou=Unidades Administrativas,ou=Geral,dc=meudominio,dc=local

    Me retornou o seguinte erro:

    dsmove failed:Value for 'Target object for this command' has incorrect format.

    Tem alguma dica para ele mover as contas?

    Obrigado!


    Bruno.
    segunda-feira, 3 de outubro de 2011 20:29
  • Tente uma destas duas alternativas

    1) Usando DSMOVE USER (veja que acrescentei um parametro)

    dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User)(department=Teste123))" |  dsmove user -newparent "ou=DPTO,ou=Unidades Administrativas,ou=Geral,dc=meudominio,dc=local"
    

     

    2) Jogando os usuário para dentro de um arquivo antes (coloque dentro de um .BAT)

    dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User)(department=Teste123))" > usuarios.txt
    
    
    for /f "Tokens=*" %%u in (usuarios.txt) do dsmove %%u -newparent "ou=DPTO,ou=Unidades Administrativas,ou=Geral,dc=meudominio,dc=local"
    

     

    Outra coisa: A sua OU de destino tem espaço no nome, coloque-a entre "aspas"

    Não tive como testar estes comandos.


    Fábio de Paula Junior
    segunda-feira, 3 de outubro de 2011 23:31
    Moderador
  • Mais uma vez obrigado pelo apoio Fábio, mais segue os resultados.

     

    1) - dsmove failed:Value for 'Target object for this command' has incorrect format.

    2) -  %%u foi inesperado neste momento.

     

    Estou vendo outras formas por aqui também, se tiver mais algumas dicas boas ai...valeu!


    Bruno.
    terça-feira, 4 de outubro de 2011 12:54
  • Sobre o numero 2:

    1)Vc colocou as duas linhas dentro de um .BAT?

    2) Foi gerado o arquivio usuarios.txt? Ele contem os usuários que vc precisa alterar?


    Fábio de Paula Junior
    terça-feira, 4 de outubro de 2011 16:07
    Moderador
  • Fábio,

     

    Funcionou aqui, eu desatento estava execuntado ele manualmente aqui, quando coloquei ele em um arquivo .bat, funcionou 100%!!!

    Muito obrigado mesmo pela força amigo!


    Bruno.
    terça-feira, 4 de outubro de 2011 17:43