如何在Powershell脚本中的Azure存储库中检索文件?

时间:2019-03-04 18:23:02

标签: azure powershell

我需要(在Powershell脚本中)确定存储库中所有可能的控制器文件名。这是一个测试,它将命中每个控制器并验证其是否正常运行,并且不会从启动文件中丢失。 (MVC应用)

由于所有文件都是DLL,所以我不能简单地在文件夹中索要文件,也不想对名称进行硬编码。如何在某个文件夹中获取文件列表,以便在Powershell脚本中调用每个文件夹进行测试?

也许更好的方法是: 如何列出存储库内文件夹中的文件? (使用Powershell脚本)

1 个答案:

答案 0 :(得分:1)

您可以参考以下文档:Interacting with Azure Web Apps Virtual File System using PowerShell and the Kudu API。它使用wiki doc中的VFS API。并且有一个api可以在path指定的目录中列出文件。

GET /api/vfs/{path}/
Lists files at directory specified by path.

在之前的文档中,标题为从App Service下载文件下,有一个脚本来下载文件。我使用不带$kuduPath的路径列出文件。而且,您需要通过PowerShell获取Kudu REST API授权标头。然后脚本就是这样。

$kuduApiUrl="https://<webname>.scm.azurewebsites.net/api/vfs/site/wwwroot/"
 Invoke-RestMethod -Uri $kuduApiUrl `
 -Headers @{"Authorization"=$kuduApiAuthorisationToken;"If-Match"="*"} `
 -Method GET `
 -OutFile $localPath `
 -ContentType "multipart/form-data"

这是结果图片。它将列出所有文件和文件夹。

enter image description here

希望这对您有帮助,如果您还有其他问题,请告诉我。