Avatar of Mike Dias
Mike Dias
 asked on

Powershell - Batch Locate AD User Object > Object Tab

I have over 80 users that I need to locate their OU container name, in preparation to move them to one container.

The users are in a txt and CSV file.

Is there a PS script that will process the check and move?
Powershell

Avatar of undefined
Last Comment
Mike Dias

8/22/2022 - Mon
Alan

Hi Mike,

It would be easier if you could post a sample of the csv file (just perhaps three rows, and feel free to obfuscate as long as you don't change the structure of the data).

Thanks,

Alan.
Mike Dias

ASKER
The CSV has 1 cell - A1 with the AD user's username i.e. firstname.lastname. There are over 80 such users, from A1 to A83..

You could create the same effect with cell A1 with "test.user1," "test.user2," ... "test.user3" etc. It'd be the same.

Hope this helps.
Alan

Okay - that format is not what I would expect for a CSV file.

Where did it come from?

Alan.
Experts Exchange has (a) saved my job multiple times, (b) saved me hours, days, and even weeks of work, and often (c) makes me look like a superhero! This place is MAGIC!
Walt Forbes
Mike Dias

ASKER
Hi Alan. The source was from a department  that assumed control of a number of users. They've only provided me with their names. I asked for more specific data and was given their usernames.
Alan

I think you'll need to convert it to a standard CSV format before you can use it.
Mike Dias

ASKER
Ok. So I need a solution.

How do I script this in Powershell?
⚡ FREE TRIAL OFFER
Try out a week of full access for free.
Find out why thousands trust the EE community with their toughest problems.
Alan

Hi Mike,

As I said, the first thing you need to do is fix the CSV file so it is in a more 'standard' format.

One way to check that is to open it in Excel (if you have that available), and see if it comes out 'nicely'.

What you posted above definitely does not.  The first element has a quote mark in front of it, and the subsequent elements have a leading space.  Those will cause PowerShell to fail to find the users, since the identifier won't match.

If you have Excel, open the attached - see how it comes out?

Alan.
EE-29065283-SampleData.csv
Mike Dias

ASKER
Hi Alan.

The CSV has 1 cell - A1 with the AD user's username i.e. firstname.lastname

There are no inverted commas, or spaces before or after. That was an expression I used above. The cell A1 is test.user1 cell A2 is test.user2 and so on.
Alan

Hi Mike,

I copied what you posted:

"test.user1," "test.user2," ... "test.user3"

I took out the three dots as I assumed you meant it went on in the same format, and then created a CSV file using that format as attached (just re-did it again in case I made a mistake before).

If you open this in Excel, do you see the leading quote mark, and the leading spaces in each cell from the second one on?

Maybe I am missing something obvious here, but it does not appear to be a standard CSV format to me, and hence I cannot see how PowerShell will be able to parse it and match to actual usernames.


Alan.
EE-29065283-SampleData.csv
Experts Exchange is like having an extremely knowledgeable team sitting and waiting for your call. Couldn't do my job half as well as I do without it!
James Murphy
Qlemo

Having a single column in a file makes it just a text file ;-). A CSV has more than one column.
We can treat both formats easily. What we need to know is whether there is a header line or not.
ASKER CERTIFIED SOLUTION
Qlemo

THIS SOLUTION ONLY AVAILABLE TO MEMBERS.
View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
GET A PERSONALIZED SOLUTION
Ask your own question & get feedback from real experts
Find out why thousands trust the EE community with their toughest problems.
Alan

@Qlemo:

Does that work for you with the sample data file above (renamed as users.txt)?


Alan.
Qlemo

Certainly not with your last one, but that has been indicated as not being correct anyway.
⚡ FREE TRIAL OFFER
Try out a week of full access for free.
Find out why thousands trust the EE community with their toughest problems.
Alan

Hi Qlemo,

The OP specifically said that *is* the format of the CSV file.

What makes you say otherwise?

Thanks,

Alan.
Qlemo

#a42347377 says so, Alan. It's just a file with one name per line.
Alan

Okay - I'm going to leave this guy with you.

Seems like they went out of their way to make things difficult for no good reason.

Good luck.

Alan.
All of life is about relationships, and EE has made a viirtual community a real community. It lifts everyone's boat
William Peck
Mike Dias

ASKER
Concise answer. Simple to use.