powershell shell diff

-81 Removals
+74 Additions
function Get-SPOFolderFilesfunction Get-sPOFolderFiles
{{
param ( param(
[Parameter(Mandatory=$true,Position=1)] [Parameter(Mandatory = $true,Position = 1)]
[string]$Username, [string]$Username,
[Parameter(Mandatory=$true,Position=2)] [Parameter(Mandatory = $true,Position = 2)]
[string]$Url, [string]$Url,
[Parameter(Mandatory=$true,Position=3)] [Parameter(Mandatory = $true,Position = 3)]
$password, $password,
[Parameter(Mandatory=$true,Position=4)] [Parameter(Mandatory = $true,Position = 4)]
[string]$ListTitle, [string]$ListTitle
[Parameter(Mandatory=$true,Position=5)] )
[string]$CSVPath
)
$ctx=New-Object Microsoft.SharePoint.Client.ClientContext($Url) $ctx = New-Object Microsoft.SharePoint.Client.ClientContext ($Url)
$ctx.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Username, $password) $ctx.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials ($Username,$password)
$ctx.Load($ctx.Web) $ctx.Load($ctx.Web)
$ctx.ExecuteQuery() $ctx.ExecuteQuery()
$ll=$ctx.Web.Lists.GetByTitle($ListTitle) $ll = $ctx.Web.Lists.GetByTitle($ListTitle)
$ctx.Load($ll) $ctx.Load($ll)
$ctx.ExecuteQuery() $ctx.ExecuteQuery()
$spqQuery = New-Object Microsoft.SharePoint.Client.CamlQuery $spqQuery = New-Object Microsoft.SharePoint.Client.CamlQuery
$spqQuery.ViewXml ="<View Scope='RecursiveAll' />"; $spqQuery.ViewXml = "<View Scope='RecursiveAll'><RowLimit>100</RowLimit></View>";
$itemki=$ll.GetItems($spqQuery)
$ctx.Load($itemki) do {
$ctx.ExecuteQuery() $itemki = $ll.GetItems($spqQuery)
$ctx.Load($itemki)
$ctx.ExecuteQuery()
foreach($item in $itemki) foreach ($item in $itemki)
{ {
Write-Host $item["FileRef"] Write-Host $item["FileRef"]
$file = $file =
$ctx.Web.GetFileByServerRelativeUrl($item["FileRef"]); $ctx.Web.GetFileByServerRelativeUrl($item["FileRef"]);
$ctx.Load($file) $ctx.Load($file)
$ctx.Load($file.Versions) $ctx.Load($file.Versions)
$ctx.ExecuteQuery() $ctx.ExecuteQuery()
if ($file.Versions.Count -eq 0) if ($file.Versions.Count -eq 0)
{ {
$obj=New-Object PSObject $obj = New-Object PSObject
$obj | Add-Member NoteProperty ServerRelativeUrl($file.ServerRelativeUrl) $obj | Add-Member NoteProperty ServerRelativeUrl ($file.ServerRelativeUrl)
$obj | Add-Member NoteProperty FileLeafRef($item["FileLeafRef"]) $obj | Add-Member NoteProperty FileLeafRef ($item["FileLeafRef"])
$obj | Add-Member NoteProperty Versions("No Versions Available") $obj | Add-Member NoteProperty Versions ("No Versions Available")
}
else
{
$file.Versions.DeleteAll()
$obj | export-csv -Path $CSVPath -Append try { $ctx.ExecuteQuery()
$obj = New-Object PSObject
$obj | Add-Member NoteProperty ServerRelativeUrl ($file.ServerRelativeUrl)
$obj | Add-Member NoteProperty FileLeafRef ($item["FileLeafRef"])
$obj | Add-Member NoteProperty Versions ($file.Versions.Count + " versions were deleted")
} }
else catch {
{ $obj = New-Object PSObject
$file.Versions.DeleteAll() $obj | Add-Member NoteProperty ServerRelativeUrl ($file.ServerRelativeUrl)
$obj | Add-Member NoteProperty FileLeafRef ($item["FileLeafRef"])
try { $ctx.ExecuteQuery() $obj | Add-Member NoteProperty Versions ($file.Versions.Count + " versions. Failed to delete")
$obj=New-Object PSObject
$obj | Add-Member NoteProperty ServerRelativeUrl($file.ServerRelativeUrl)
$obj | Add-Member NoteProperty FileLeafRef($item["FileLeafRef"])
$obj | Add-Member NoteProperty Versions($file.Versions.Count + " versions were deleted")
$obj | export-csv -Path $CSVPath -Append
}
catch {
$obj=New-Object PSObject
$obj | Add-Member NoteProperty ServerRelativeUrl($file.ServerRelativeUrl)
$obj | Add-Member NoteProperty FileLeafRef($item["FileLeafRef"])
$obj | Add-Member NoteProperty Versions($file.Versions.Count + " versions. Failed to delete")
$obj | export-csv -Path $CSVPath -Append
}
} }
}
}
$spqQuery.ListItemCollectionPosition = $itemki.ListItemCollectionPosition
} while ($itemki.ListItemCollectionPosition)
}
#Paths to SDK
}Add-Type -Path ".\Lib\Microsoft.SharePoint.Client.dll"
Add-Type -Path ".\Lib\Microsoft.SharePoint.Client.Runtime.dll"
#Enter the data
$Url = "https://TODO-my.sharepoint.com/personal/TODO_SITE_NAME"
$username = "TODO_USERNAME"
$AdminPassword = ConvertTo-SecureString -String "TODO_PASSWORD" -AsPlainText -Force
#$AdminPassword=Read-Host -Prompt "Enter password" -AsSecureString
#$ListTitle = "文档"
$ListTitle="Documents"
Get-sPOFolderFiles -UserName $username -Url $Url -password $AdminPassword -ListTitle $ListTitle
}
#Paths to SDK
Add-Type -Path "c:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "c:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"
#Enter the data
$AdminPassword=Read-Host -Prompt "Enter password" -AsSecureString
$username="trial@trialtrial125.onmicrosoft.com"
$Url="https://trialtrial125.sharepoint.com/sites/teamsitewithlibraries"
$ListTitle="Not-Empty-Document-Library"
$csvPath="C:\Users\ivo\Desktop\testpath114.csv"
Get-sPOFolderFiles -Username $username -Url $Url -password $AdminPassword -ListTitle $ListTitle -CSVPath $csvPath
Editor
Clear
Export as PDF
Original Text
Changed Text