[Webinar] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 616
  • Last Modified:

Script to move a computer object and add to specified groups.

Hello all,

Im looking for some help creating a script (or finding one) that can be used easily by our workstation support team.

Here is what needs to happen

1. Computer Object gets created in a specified OU - This will be done manually.
2. Workstation Tech starts the script and enters the computer name that was created.
3. Script moves the computer object to a specified OU and adds it to a set of specified security groups.

Thanks again,
0
omcmonitor
Asked:
omcmonitor
  • 6
  • 6
1 Solution
 
BT15Commented:
this asks for an inputed computername. you just need to sub out the distiguished name of the OU that you are moving to and the group names you want to add.

you also need the activedirectory commandlets installed (RSAT)

if you dont have those (or are running XP/server 2003) there are AD commandlets availible from Quest with similar syntax.



import-module activedirectory

$computername = read-host Enter Computer Name

get-adcomputer $computername | move-adobject -targetpath "OU=Destination,DC=Test,Dc=Domain,DC=com

add-adgroupmember "Group1" -members $computername
add-adgroupmember "Group2" -members $computername
add-adgroupmember "Group3" -members $computername
0
 
omcmonitorAuthor Commented:
Sorry for my lack of knowledge, is this a vb script?
0
 
BT15Commented:
no need to be sorry. I didnt see that this was given multiple topics.

This is powershell.

what Operating system will you be using to execute this?
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
omcmonitorAuthor Commented:
Well we all run windows 7. So that should work out just fine! Ill go test it out!
0
 
BT15Commented:
great.

you will want to install RSAT if you dont have it already.

http://www.microsoft.com/en-us/download/details.aspx?id=7887
0
 
omcmonitorAuthor Commented:
Yep I have that installed for sure. I can get the others setup with it.
0
 
omcmonitorAuthor Commented:
Is there a way i can specify the OU that the script looks in initially? say OU=Computers,DC=Domain,DC=Org

Currently, does it just look through the entire directory?
0
 
BT15Commented:
absolutely

import-module activedirectory

$computername = read-host Enter Computer Name

get-adcomputer $computername -searchbase "OU=Computers,DC=Domain,DC=Org" | move-adobject -targetpath "OU=Destination,DC=Test,Dc=Domain,DC=com

add-adgroupmember "Group1" -members $computername
add-adgroupmember "Group2" -members $computername
add-adgroupmember "Group3" -members $computername
0
 
omcmonitorAuthor Commented:
I am running the commands one at a time and get the following error.

Windows PowerShell
Copyright (C) 2009 Microsoft Corporation. All rights reserved.

PS U:\> import-module activedirectory
PS U:\> $computername = read-host Enter Computer Name
Enter Computer Name: SEC1ITL004
PS U:\> get-adcomputer $computername -searchbase "OU=Computers Test,DC=Domain,DC=org" | move-adobject -targetpath "OU=Wi
reless Lockdown,OU=Imprivata,OU=Workstations,OU=Devices,OU=Hospital,DC=Domain,DC=org"
Get-ADComputer : A positional parameter cannot be found that accepts argument 'SEC1ITL004'.
At line:1 char:15
+ get-adcomputer <<<<  $computername -searchbase "OU=Computers Test,DC=Domain,DC=org" | move-adobject -targetpath "OU=W
ireless Lockdown,OU=Imprivata,OU=Workstations,OU=Devices,OU=Hospital,DC=olmmed,DC=org"
    + CategoryInfo          : InvalidArgument: (:) [Get-ADComputer], ParameterBindingException
    + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.ActiveDirectory.Management.Commands.GetADComputer

Open in new window

0
 
BT15Commented:
my appologies. Please try this instead:

import-module activedirectory

$computername = read-host Enter Computer Name

get-adcomputer -searchbase "OU=Computers,DC=Domain,DC=Org"  -filter {name -eq $computername}| move-adobject -targetpath "OU=Destination,DC=Test,Dc=Domain,DC=com

add-adgroupmember "Group1" -members $computername
add-adgroupmember "Group2" -members $computername
add-adgroupmember "Group3" -members $computername

Open in new window

0
 
omcmonitorAuthor Commented:
Now after this

get-adcomputer -searchbase "OU=Computers,DC=Domain,DC=Org"  -filter {name -eq $computername}| move-adobject -targetpath "OU=Destination,DC=Test,Dc=Domain,DC=com

Open in new window


I just get the following prompt with the blinking cursor after it.

>>

Open in new window

0
 
BT15Commented:
sorry. its missing a closed quote on that line, which apparently didnt paste.


import-module activedirectory

$computername = read-host Enter Computer Name

get-adcomputer -searchbase "OU=Computers,DC=Domain,DC=Org"  -filter {name -eq $computername}| move-adobject -targetpath "OU=Destination,DC=Test,Dc=Domain,DC=com"

add-adgroupmember "Group1" -members $computername
add-adgroupmember "Group2" -members $computername
add-adgroupmember "Group3" -members $computername

Open in new window

0
 
Martin LissRetired ProgrammerCommented:
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
0

Featured Post

 The Evil-ution of Network Security Threats

What are the hacks that forever changed the security industry? To answer that question, we created an exciting new eBook that takes you on a trip through hacking history. It explores the top hacks from the 80s to 2010s, why they mattered, and how the security industry responded.

  • 6
  • 6
Tackle projects and never again get stuck behind a technical roadblock.
Join Now