Powershell. Загрузка файлов с помощью службы BITS
13 Dec 2018
local_offer
powershell
## Windows 10 LTSC 2019
$JobName = "SW_DVD5_WIN_ENT_LTSC_2019_64-bit_Russian_MLF_X21-96463.ISO"
$SourceFile = "https://webnote.satin-pl.com/public/soft/ISO/$JobName"
$DestinationFile = "E:\Temp\$JobName"
Start-BitsTransfer -Asynchronous -DisplayName $JobName -Source $SourceFile -Destination $DestinationFile
## Office 2013
$JobName = "Office_2013_SP1_x86_x64_Ru-En_Select_MLF_KROKOZ.iso"
$SourceFile = "https://webnote.satin-pl.com/public/soft/ISO/$JobName"
$DestinationFile = "E:\Temp\$JobName"
Start-BitsTransfer -Asynchronous -DisplayName $JobName -Source $SourceFile -Destination $DestinationFile
Загрузка группы файлов с web-сервера
Import-Module BitsTransfer
# $User = "DOMAIN\backup-user"
# $PWord = ConvertTo-SecureString -String "password" -AsPlainText -Force
# $Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User, $PWord
$OutputReport = ""
$DestinationFolder = "C:\Temp\"
$SiteAddress = "https://webnote.satin-pl.com"
$DownloadUrlPath = "$SiteAddress/public/soft/ISO/"
$HttpContent = Invoke-WebRequest -URI $DownloadUrlPath -Credential $Credential
$FileLinks = $HttpContent.Links | Foreach {$_.href }
foreach ($FileLink in $FileLinks) {
if (($FileLink.endsWith(".iso")) -Or ($FileLink.endsWith(".ISO"))) {
$SourceFile = $SiteAddress + $FileLink
$JobName = $FileLink.Split("/")[-1]
Write-Verbose "Найден файл соответствующий критериям: $SourceFile"
Start-BitsTransfer -Asynchronous -DisplayName $JobName -Authentication NTLM -Credential $Credential -Source $SourceFile -Destination $DestinationFolder
$OutputReport += "BitsTransfer: " + $SourceFile + "`n"
}
}