2

我正在使用 DPM powershell 脚本来获取特定目录中可用于备份的文件/文件夹列表。更准确地说,我需要获取目录 D:\inetpub\vhosts\ 下的文件夹列表(即所有虚拟主机)。我一直在尝试使用 DPM powershell cmdlet 编写脚本,这就是我想出的。

$searchpath = 'D:\inetpub\vhosts'
$so=New-SearchOption -FromRecoveryPoint $today -ToRecoveryPoint $tomorrow -SearchDetail     filesfolders -SearchType contains -Location  $searchpath -SearchString  "*" -ErrorAction SilentlyContinue

$ri=Get-RecoverableItem -Datasource $datasource -SearchOption $so  -ErrorAction SilentlyContinue
foreach($file in $ri)
{
    echo $file.userFriendlyName
}

但我无法获得所有目录。经过一番研究,我发现 New-SearchOption 最多可以返回 250 次搜索。在我的使用中,文件夹的数量最少为 1500。有没有办法获取所有文件。任何帮助将不胜感激。

4

1 回答 1

1

您是否尝试过使用管道。cmdlet 中可能有内置的分页功能,只能使用管道使用。试试下面的代码:

$searchpath = 'D:\inetpub\vhosts'

New-SearchOption -FromRecoveryPoint $today -ToRecoveryPoint $tomorrow -SearchDetail filesfolders -SearchType contains -Location  $searchpath -SearchString  "*" -ErrorAction SilentlyContinue |

    Get-RecoverableItem -Datasource $datasource -ErrorAction SilentlyContinue | For-EachObject { 

        $_.userFriendlyName
}
于 2013-05-13T16:46:31.687 回答