Solved

Move Users Favorites Folder and then Delete?

Posted on 2014-03-03
7
382 Views
Last Modified: 2014-03-05
Hello,

My current scenario is as follows for user accounts:
\\90.244.233.10\userprofile$\User-16 (this is their profile path)
\\90.244.233.10\userprofile$\User-16\Favorites (this is their favorites folder)

I need to take the above favorites folder and move it to their userhome$ folder found here:

\\90.244.233.10\userhome$\%username%\Favorites (these folders already exist)

Then delete their complete userprofile$ folder.

How can I achieve this using powershell? I think the tricky part for me is going through each folder in userprofile$ and looking for a \Favorites folder and then matching that userprofile$ foldername to %username% since they're the same.
Thank you.
0
Comment
Question by:levertm
  • 4
  • 3
7 Comments
 
LVL 28

Expert Comment

by:becraig
ID: 39901194
if (Test-Path -Path "\\90.244.233.10\userprofile$\User-16\Favorites") 
{
move-item -path  \\90.244.233.10\userprofile$\User-16\Favorites -destination \\90.244.233.10\userhome$\%username%\
remove-item -path  \\90.244.233.10\userprofile$\User-16 -recurse
}

Open in new window


Something like above should work, very simple.

The if statement verifies if the folder exists.

If it does you proceed to move the favorites folder
Move-item

Then delete the userprofile folder
Remove-Item
0
 

Author Comment

by:levertm
ID: 39901231
Hi becraig,

Thanks for the input, it's a good start. How do I go about talking over 100 user accounts? I would have to run this script with variable so as to not set any hard coded values for account usernames (ie: user-16)
0
 
LVL 28

Accepted Solution

by:
becraig earned 500 total points
ID: 39901249
gc users.txt | % {
$user = "$_"
if (Test-Path -Path "\\90.244.233.10\userprofile$\$user\Favorites") 
{
move-item -path  \\90.244.233.10\userprofile$\$user\Favorites -destination \\90.244.233.10\userhome$\$user\
remove-item -path  \\90.244.233.10\userprofile$\$user -recurse
}                                            
}

Open in new window


This is assuming you have a text file with the username one per line (Matching the exact folder names)
0
 

Author Comment

by:levertm
ID: 39901256
I will generate a text file and test your code in my environment right now!

Be back later with my findings and results.
0
 

Author Comment

by:levertm
ID: 39901366
Thank you becraig, that worked. Although I had to use the copy-item instead as the move-item gave me errors.
0
 
LVL 28

Expert Comment

by:becraig
ID: 39901382
ok sounds good.

As a rule of thumb I always copy (just in case)
0
 

Author Comment

by:levertm
ID: 39907786
I also posted this http://www.experts-exchange.com/Programming/Languages/Scripting/Powershell/Q_28381231.html begraig if you're interested to take a stab :)
0

Join & Write a Comment

Utilizing an array to gracefully append to a list of EmailAddresses
Disabling the Directory Sync Service Account in Office 365 will stop directory synchronization from working.
This tutorial will walk an individual through the process of transferring the five major, necessary Active Directory Roles, commonly referred to as the FSMO roles from a Windows Server 2008 domain controller to a Windows Server 2012 domain controlle…
This tutorial will walk an individual through the process of configuring their Windows Server 2012 domain controller to synchronize its time with a trusted, external resource. Use Google, Bing, or other preferred search engine to locate trusted NTP …

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now