In SharePoint 2013 we have an option to sync all the data
from SharePoint document libraries to local folders by using Shared drive
concept. We can download the document s from SharePoint document library using Power Shell commands also. We can do that in overall site collections and all the site
collection may contain loads of documents and downloading one by one is a huge
task by using windows explorer.
To download the document we can use following script,
$listUrls="Doc lib 1 URL″,” Doc lib 2 URL ″,” Doc lib 3 URL ″," Doc lib 4 URL ″ (All the document libraries URL’s)
#Enter the web site URL
$web = Get-SPWeb -Identity
$webUrl
#Load all the list URLs in the web, Open the list URL.
foreach($listUrl in $listUrls)
{
{
#get the list URL
$list = $web.GetList($webUrl+”/”+$listUrl)
function DownloadDocuments{
param($folderUrl)
$folder = $web.GetFolder($folderUrl)
foreach ($file in $folder.Files) {
param($folderUrl)
$folder = $web.GetFolder($folderUrl)
foreach ($file in $folder.Files) {
#Ensure destination directory
$destinationfolder = $destination + “/” + $folder.Url
if (!(Test-Path -path $destinationfolder))
{
$dest = New-Item $destinationfolder -type directory
}
#Download file
$binary = $file.OpenBinary()
$stream = New-Object System.IO.FileStream($destinationfolder + “/” + $file.Name)
$writer = New-Object System.IO.BinaryWriter($stream)
$writer.write($binary)
$writer.Close()
}
}
#Download root folder
documents
DownloadDocuments ($list.RootFolder.Url)
foreach ($folder in $list.Folders) {
#download all the documents in each sub folders
DownloadDocuments($folder.Url)
}