使用模式从目录获取最新文件

时间:2019-06-24 10:45:30

标签: azure azure-devops azure-pipelines

我有一个生成HTML报告的任务,例如:

Api-Test-Automation-2019-06-23-12-35-54-450-0.html
Api-Test-Automation-2019-06-23-12-38-44-701-0.html

我想获取最新报告并将其作为附件发送到电子邮件中。

这实际上将附加所有文件:

$(Build.SourcesDirectory)\newman\htmlreport\*.html

但是我只想添加最新创建的文件。

1 个答案:

答案 0 :(得分:1)

因此,您有2个HTML报告,并且您只想发送最后一个报告。您可以通过将最后一个文件路径设置为变量的PowerShell任务(在html生成后添加PowerShell任务)来实现此目标:

cd $(Build.SourcesDirectory)\newman\htmlreports
$files = dir -Filter *.html
$latest = $files | Sort-Object LastAccessTime -Descending | Select-Object -First 1
$lastFile = $latest.FullName
Write-Host "##vso[task.setvariable variable=latestHtml]$lastFile"

现在,在“发送电子邮件”任务中,只需放入变量$(latestHtml)