【发布时间】:2020-11-11 09:38:39
【问题描述】:
我对脚本和 powershell 很陌生,对我来说太简单了。 我的目标是在线连接到 Sharepoint,并下载上传到特定站点的最新文件。
目前我可以使用 Connect-PnPonline 连接到 Sharepoint,然后我使用 PnPListItem 来查询我需要的文件,但我被困在下载文件的最后一步。
这是我的代码:
cls
$SPOsite="https://example.sharepoint.com/sites/example"
$TargetFile="C:\example"
Connect-PnPOnline -Url $SPOsite -ClientId xxxxx-xxxxx-xxxxx-xxxx -ClientSecret secretsecret112233
$ListItems = Get-PnPListItem -List Documents | select -last 1
$ctx= Get-PnPContext
foreach ($item in $ListItems)
{
$file = $item.file
$fileversions = $file.Versions
$ctx.load($file)
$ctx.load($fileversions)
$ctx.ExecuteQuery()
Write-Host $file.Name,$fileversions.VersionLabel
}
Get-PnPFile -Url "https://example.sharepoint.com/sites/example" -Filename $ListItems -Path $TargetFile -AsFile
我得到的错误信息是
Get-PnPFile : File Not Found.
At \\cifs-share.example.org\Usershome\user\Desktop\PowerShell\dwnldSPfiles.ps1:20 char:1
+ Get-PnPFile -Url "https://example.sharepoint.com/sites/example" -Fi ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : WriteError: (:) [Get-PnPFile], ServerException
+ FullyQualifiedErrorId : EXCEPTION,PnP.PowerShell.Commands.Files.GetFile
【问题讨论】:
-
I tried using Get-PnPfile but it failed.是怎么失败的?您收到错误消息了吗? -
我尝试使用这一行 Get-PnPFile -Url "example.sharepoint.com/sites/example" -Filename $ListItems -Path $TargetFile -AsFile 但我得到 File Not Found,如何将 $ListItems 返回结果传递给获取 PnP 文件?
-
请更新您的原始帖子以包含错误消息。
-
用错误信息更新了原帖,谢谢!
标签: powershell sharepoint-online