我要求从我们的Sitecore媒体库的特定文件夹中删除多个PDF,可能超过1000个文档。我们需要维护这些PDF的文件名,并且更愿意维护"文件结构/层次结构"这些文件。
我们已尝试使用Sitecore Powershell Extensions"下载"功能,但它似乎不下载PDF,只下载内容项本身。我们可以创建一个包,但包含生成的PDF的文件夹的文件名已被GUID替换。
是否有PS脚本可用或以其他方式批量下载这些媒体库PDF?
P.S。我是Powershell新手,所以请保持温柔。
答案 0 :(得分:1)
听起来你需要使用Send-File
命令。在媒体库项目上执行时,它允许您下载存储在该项目中的关联blob。
示例:
PS master:\>Get-Item "master:\media library\files\pdfs\mypdffile" | Send-File -Message "PDF Download"
您可以将-NoDialog
传递给它,这样每次都不会向用户提出建议。
因此,对于多个文件,您可以这样做:
Get-Item -Path master -Query "/sitecore/#media library#/files//*[@@templatename='Pdf']" |
Send-File -NoDialog
对于那个用1000的文件,我看不出性能很好。此外,它不会保留路径,所有文件都将直接保存到Downloads
文件夹。
答案 1 :(得分:0)
也许您可能有兴趣通过SPE Remoting使用下载功能。这是一种在Sitecore之外运行并通过Web服务连接的替代解决方案。
下载示例脚本:
预订有关设置的详细信息:
https://sitecorepowershell.gitbooks.io/sitecore-powershell-extensions/content/remoting.html