Powershell with recursive looping in SharePoint Online

Implementing Recursion in PowerShell

These days all the clients are looking for migrating their data from local environment to SharePoint / Office 365 for better collaboration. As part this migration process for better progress and quick migration we need to implement some automation process. The best way(s) to migrate data from local folders/drives to SharePoint or Office 365 is:

  • PowerShell scripting
  • Implementing windows application with managed client-side object model
  • ECMA script to upload files

As discussed above I would like to discuss the first approach PowerShell scripting. To read all the files from the local drive/folder we need to make use of recursion.

SharePoint deveopment training course

Code sample for implementing recursion in PowerShell.

try {
function getAllFile([string]$path) {
$fc = new-object -com scripting.filesystemobject
$folder = $fc.getfolder($path)
Write-Host “Folder Name=”$folder.Name “Path=”$path
foreach ($i in $folder.files) {
Write-Host “`nFile Name::” $i.Name
Write-Host “File Path::” $i.Path
foreach ($i in $folder.subfolders) {
getAllFile “G:\KVN Articles”
catch {
Write-Host “`n Error:: $($_.Exception.Message)” -ForegroundColor Red -BackgroundColor Yellow
Let us walk through the code:
-> new-object -com scripting.filesystemobject – To get the object of the file system
-> $fc.getfolder($path) – To get object of folder
-> $folder.subfolders – To get object of folder

The output will be as follows:

Implementing Recursion in PowerShell
Implementing Recursion in PowerShell

You may like following SharePoint PowerShell tutorials:

Hope this helps.!!!

Check out Best Alternative to InfoPath -> Try Now

free sharepoint training

SharePoint Online FREE Training

JOIN a FREE SharePoint Video Course (3 Part Video Series)


About Krishna Vandanapu

I am Krishna.Vandanapu a SharePoint architect working in IT from last 13+ years, I worked in SharePoint 2007, 2010, 2013, 2016 and Office 365. I have extensive hands on experience in customizing SharePoint sites from end to end. Expertise in SharePoint migration tools like Sharegate, Doc Ave and Metalogix. Migrated SharePoint sites from SharePoint 2007 to 2010 and 2010 to 2013 several times seamlessly. Implementing CSOM with Microsoft best practices. Spent quality time in configuring SharePoint application services like User Profile, Search, Managed Meta data services etc. Now exploring SharePoint Framework and SharePoint 2019

View all posts by Krishna Vandanapu →