Sign in to follow this  
Followers 0

Scripting Active Directory Commands

5 posts in this topic

Posted

Hello All,

I am new to scripting in AutoIt and am having some troubles. I am using JoeWare's adfind.exe and admod.exe AD tools to modify User/Computer object attributes.

Currently I open a command prompt where the .exe's are located and run the following command:

adfind.exe -b -default -rb "ou=Printers,ou=Anaconda,ou=OPD,ou=DOA" -f "&(objectCategory=computer)(!doaITSDBillingClient=EXE-OPD-610805-OPD_20520)" -dsq | admod.exe "doaITSDBillingClient::EXE-OPD-610805-OPD_20520" -unsafe

Basically it searches a defined OU for computer objects and pipes the results into the modification tool. I have about 50 similar commands to run on different OUs and object types so I would like to get them all into one script. Currently I have attempted using the following code in an AutoIt script, but it is not working:

RunWait(@ComSpec & '"C:\ADTools\adfind.exe -b -default -rb "ou=Printers,ou=Anaconda,ou=OPD,ou=DOA" -f "&(objectCategory=computer)(!doaITSDBillingClient=EXE-OPD-610805-OPD_20520)" -dsq | admod.exe "doaITSDBillingClient::EXE-OPD-610805-OPD_20520" -unsafe"')

Any help you can provide me as a n00b is greatly appreciated.

Cheers

Share this post


Link to post
Share on other sites



Posted

Hello All,

I am new to scripting in AutoIt and am having some troubles. I am using JoeWare's adfind.exe and admod.exe AD tools to modify User/Computer object attributes.

Currently I open a command prompt where the .exe's are located and run the following command:

adfind.exe -b -default -rb "ou=Printers,ou=Anaconda,ou=OPD,ou=DOA" -f "&(objectCategory=computer)(!doaITSDBillingClient=EXE-OPD-610805-OPD_20520)" -dsq | admod.exe "doaITSDBillingClient::EXE-OPD-610805-OPD_20520" -unsafe

Basically it searches a defined OU for computer objects and pipes the results into the modification tool. I have about 50 similar commands to run on different OUs and object types so I would like to get them all into one script. Currently I have attempted using the following code in an AutoIt script, but it is not working:

RunWait(@ComSpec & '"C:\ADTools\adfind.exe -b -default -rb "ou=Printers,ou=Anaconda,ou=OPD,ou=DOA" -f "&(objectCategory=computer)(!doaITSDBillingClient=EXE-OPD-610805-OPD_20520)" -dsq | admod.exe "doaITSDBillingClient::EXE-OPD-610805-OPD_20520" -unsafe"')

Any help you can provide me as a n00b is greatly appreciated.

Cheers

I just thought I would add that I have each of the 50 or so pieces of code in separate text files right now...don't know if there is an easier way to go about the whole process but am open to any and all suggestions.

Share this post


Link to post
Share on other sites

Posted

Please have a look at my Active Directory UDF (for download please see my signature).

Functions _AD_GetObjectsInOU and _AD_ModifyAttribute should do what you need.

Share this post


Link to post
Share on other sites

Posted

I can get the _AD_ModifyAttribute to modify a users description but not a computers description.

Share this post


Link to post
Share on other sites

Posted

I can get the _AD_ModifyAttribute to modify a users description but not a computers description.

I assume you pass the SamAccountName to the function (e.g. @Username for a user account or @ComputerName for the computer account).

The SamAccountName of a computer has a Dollar sign appended.

So you have to pass: @ComputerName & "$"

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0