Need help using a CSV file to copy files to new subfolders using Powershell

I have a CSV file with headers FilePath and FileDestination. I can load it in an array with import-csv.

What I need to do is copy each file from FilePath (eg G:\99999\0001\CientWill1.PDF) to the FileDestination (e.g G:\99999\00001\Trusts and Wills\ClientWill1.PDF). Creating the subfolders as needed.

Something with Copy-Item / Foreach-object using the headers should work, but I've tried a ton of combinations, and had no success. Can anyone give me a bit of help getting this going?

Thanks,
sfaulstichAsked:
Who is Participating?
 
RobSampsonCommented:
Hi, something like should work for you.  You could use -WhatIf if you needed to.

Regards,

Rob.

import-csv .\FileToCopy.txt | 
ForEach {
    if ((Test-Path -Path $_.FileDestination) -eq $false) {
        New-Item -ItemType Directory -Force -Path $_.FileDestination
    }
    Copy-Item -Path $_.FileName -Destination $_.FileDestination -Recurse -Force
}

Open in new window

0
 
sfaulstichAuthor Commented:
Rob,

You are amazing. Thank you so much for the fast reply.
0
 
RobSampsonCommented:
Thanks!  If it works for you, please don't forget to close the question.  Otherwise, let me know if you need anything further, or any of it explained.

Rob.
0
 
sfaulstichAuthor Commented:
Rob gave me a fast answer after I was stumped. I very much appreciate the help!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.