I want to make my PowerShell download a file from the internet. So how could I do that my original code was $File = URLDownload file.WebClient = File.ext
2 Answers
This is a very common thing and very well documented all over the web and in Youtube videos. A quick web search would have given you the options.There are multiple ways to do web downloads.
Hit(s) from the search above:
3 ways to download files with PowerShell
- Invoke-WebRequest
The first and most obvious option is the Invoke-WebRequest cmdlet. It is built into PowerShell and can be used in the following method:
$url = ""
$output = "$PSScriptRoot\10meg.test"
$start_time = Get-Date
Invoke-WebRequest -Uri $url -OutFile $output
Write-Output "Time taken: $((Get-Date).Subtract($start_time).Seconds) second(s)"
- System.Net.WebClient
A common .NET class used for downloading files is the System.Net.WebClient class.
$url = ""
$output = "$PSScriptRoot\10meg.test"
$start_time = Get-Date
$wc = New-Object System.Net.WebClient
$wc.DownloadFile($url, $output)
#OR
(New-Object System.Net.WebClient).DownloadFile($url, $output)
Write-Output "Time taken: $((Get-Date).Subtract($start_time).Seconds) second(s)"
- Start-BitsTransfer
If you haven't heard of BITS before, check this out. BITS is primarily designed for asynchronous file downloads, but works perfectly fine synchronously too (assuming you have BITS enabled).
$url = ""
$output = "$PSScriptRoot\10meg.test"
$start_time = Get-Date
Import-Module BitsTransfer
Start-BitsTransfer -Source $url -Destination $output
#OR
Start-BitsTransfer -Source $url -Destination $output -Asynchronous
Write-Output "Time taken: $((Get-Date).Subtract($start_time).Seconds) second(s)" 1 first, create a new object with this code.
$WebClient = New_object system.net.WebClientNow the URL to download a file you must use media fires imidiate download links for an image just get the link$url = "URL HERE"$file = "$pwd\What you want the name and ext of file to be"WebClient.Downloadfile($url,$file)The order I put the lines in is the order you put them in the file