使用PowerShell将Report Server文件夹列表导出到文本文件

时间:2019-04-23 16:22:56

标签: powershell reporting-services

我是刚开始使用PowerShell,所以很抱歉,如果这是一个基本问题。

我想编写一些代码,以列出报表服务器上从上到下的所有文件夹和文件夹路径,直到一个.txt文件,每个文件夹/路径一行。然后,我将编辑此列表,然后使用它将选定文件夹的.rdl内容转储到单个文件服务器文件夹中,以进行重组练习。

ReportingServicesTools提供了Get-RsFolderContent,尽管我不确定文件夹是否被视为“内容”,如果不确定,其他命令也可以提供此功能。另外,如何将结果传递到“添加内容”命令以将其写入文件?

这是我第一次尝试失败,

Get-RsFolderContent -Proxy $proxy -RsFolder / | 
    WHERE TypeName -NotLike Report | 
        Add-Content S:\Reports\Download\DownloadFolderList.txt Name

2 个答案:

答案 0 :(得分:1)

尝试以下操作...

Get-RsFolderContent -Proxy $proxy -RsFolder / -Recurse | 
where { $_.TypeName -eq 'Folder' } | 
Add-Content -Path 'S:\Reports\Download\DownloadFolderList.txt'
  • 将谓词放在大括号中的WHERE-OBJECT中。
  • 已更改谓词以返回目录对象
  • 添加了递归开关,以便找到所有文件夹
  • 删除了name调用中的Add-Content文字
  • path调用中指定了Add-Content参数,并将值包装在单引号中

没有对此进行测试。 GL!

答案 1 :(得分:0)

这最终给了我文件夹列表,按字母顺序排序:

Get-RsFolderContent -Proxy $ proxy -RsFolder / -Recurse | 其中{$ _。TypeName -eq'Folder'} |选择–ExpandProperty路径|排序对象| 外文件-filepath'S:\ Reports \ Download \ DownloadFolderList.txt'