使用随机名称下载文件并执行

时间:2019-05-21 09:15:49

标签: powershell

MSI Generator-下载自定义名称的MSI,我需要下载并执行。

我可以下载并指定一个保存的文件名,但是我无法通过它。

因此,此特殊URL创建了要下载的自定义MSI文件,例如Installer_t493ht.msi(随机部分每次都会更改)。我正在尝试使用PowerShell将文件下载到特定目录,将文件名分配给变量,然后执行。

到目前为止,我有:

$url = "https://UrlThatGeneratesRandomlyNamedMSI"
$output = "c:\SaveToThisDirectory\"

Import-Module BitsTransfer 

$job += Start-BitsTransfer -Source $url -Destination $output

while ($job | Where-Object {$job.JobState -eq "Transferring"}) {
    Sleep -Seconds 1
}

Start-Process msiexec.exe -Wait -ArgumentList '/I /qn $output/$RandomName.msi REBOOT=ReallySuppress'

1 个答案:

答案 0 :(得分:0)

只需添加以下内容:

$msiFile = Get-Item -Path "$output\Installer_*.msi"

比执行该操作(请确保使用双引号使变量变大):

Start-Process msiexec.exe -Wait -ArgumentList "/I /qn $($msiFile.FullName) REBOOT=ReallySuppress"