cls
Add-PSSnapin "Microsoft.SharePoint.PowerShell";
function Filescopying()
{
$files
= $DirectoryInfo.GetFiles();
foreach($file in $files)
{
$List
= $spSourceWeb.GetFolder($sourceListName+$foldername)
$Files=$List.Files;
if($Files.Name -contains $file.Name){
write-host
"File contains"+$file.Name
}
else{
$FileFullPath
= $file.FullName
$fileStream= Get-ChildItem $FileFullPath
$spFile
= $Files.Add($sourceListName+"/"+$foldername+"/"+$file.Name,$fileStream.OpenRead(),$true)
write-host
-f Green "...Success!"
write-host
-NoNewLine -f yellow "Update
file properties " $spFile.Name "..."
}
}
}
function remoteSharepoint($filename)
{
try
{
$DirectoryInfo
= New-Object
IO.DirectoryInfo("\\test021\merica\files\"+$filename)
$sourceWebURL
= "http://merica.qa"
$sourceListName
= "merciaLibrary"
$visitorsSPGroup="merica QA
FTP Files";
$spSourceWeb
= Get-SPWeb
$sourceWebURL
$spSourceDocument
= $spSourceWeb.Lists[$sourceListName]
if(![string]::IsNullOrEmpty($sourceListName)
)
{
$foldername
= $filename;
$targetFolder
= $spSourceWeb.GetFolder($spSourceDocument.RootFolder.ServerRelativeUrl
+ "/$foldername")
if($targetFolder.Exists
-eq $false)
{
$spFolder
= $spSourceDocument.AddItem("",[Microsoft.SharePoint.SPFileSystemObjectType]::Folder,$foldername)
$spFolder.Update()
$foldercoll=$spSourceDocument.Folders;
foreach($folder in $foldercoll)
{
if($foldername -eq
$folder.Name)
{
#Break
permission inheritance on a folder
$spFolder.BreakRoleInheritance($FALSE);
#$group
= $spSourceWeb.SiteGroups[$visitorsSPGroup]
#$roleAssignment
= new-object Micrlisosoft.SharePoint.SPRoleAssignment($group)
#$roleDefinition
= $spSourceWeb.RoleDefinitions["Read"];
#$roleAssignment.RoleDefinitionBindings.Add($roleDefinition);
#$spFolder.RoleAssignments.Add($roleAssignment);
#$spFolder.SystemUpdate();
Filescopying
}
}
#Remove-Item
$DirectoryInfo
}
else
{
Write-Host
$foldername Folder
Already exist
-ForegroundColor Red
Filescopying
}
}
Remove-Item
-Recurse -Force
$DirectoryInfo
#Remove-Item
$DirectoryInfo
}
catch [Exception]
{
Write-Host
$_.Exception.Message
}
}
cls
try{
write-host "Started Uploading Files from FileSystem to
Sharepoint Document Library" -foregroundcolor
Green
$Dir = get-childitem \\test021\merica\files -recurse;
foreach($file in $dir)
{
[decimal] $de = $file.Length/1024;
$fileSize
= [math]::floor($de);
if(
$fileSize -le
61440)
{
remoteSharepoint
$file.Name
}
}
write-host "Completed Successfully uploading to Sharepoint
Document Library" -foregroundcolor Green
}
catch [Exception]
{
Write-Host $_.Exception.Message
}



No comments:
Post a Comment