我正在编写一个脚本来获取 Outlook 中的帐户。为此,我检索 .pst 和 .ost 文件。但如果没有任何文件,我想写一个输出,例如“未找到文件”这是我的代码:
get-childitem -path C:\users\*\AppData\Local\Microsoft\Outlook* -recurse -force -dept 1 -include *.ost, *.pst | select-object fullname, @{name='Size_MB';expression={$_.length /1MB -as [int]}}, lastwritetime | Sort-Object -Property Size_MB -Descending | out-file c:\test.txt
我尝试了很多方法,但都没有效果...有什么想法吗?
非常感谢!
答案1
标准方法是将 Get-ChildItem 的结果分配给一个变量,然后使用 if/else 从那里处理它。
就像是:
$OutlookAccounts = $null;
$OutlookAccounts = get-childitem -path C:\users\*\AppData\Local\Microsoft\Outlook* -recurse -force -dept 1 -include *.ost, *.pst | select-object fullname, @{name='Size_MB';expression={$_.length /1MB -as [int]}}, lastwritetime;
If ($OutlookAccounts -ne $null)
{
$OutlookAccounts | Sort-Object -Property Size_MB -Descending | out-file c:\test.txt;
}
Else
{
Write-Host "No files found";
}