Hier ist eine PowerShell-Funktion, die kurze URLs vor dem Herunterladen der Datei auflöst
function Get-FileFromUri {
param(
[parameter(Mandatory=$true, Position=0, ValueFromPipeline=$true, ValueFromPipelineByPropertyName=$true)]
[string]
[Alias('Uri')]
$Url,
[parameter(Mandatory=$false, Position=1)]
[string]
[Alias('Folder')]
$FolderPath
)
process {
try {
# resolve short URLs
$req = [System.Net.HttpWebRequest]::Create($Url)
$req.Method = "HEAD"
$response = $req.GetResponse()
$fUri = $response.ResponseUri
$filename = [System.IO.Path]::GetFileName($fUri.LocalPath);
$response.Close()
# download file
$destination = (Get-Item -Path ".\" -Verbose).FullName
if ($FolderPath) { $destination = $FolderPath }
if ($destination.EndsWith('
Verwenden Sie sie wie folgt, um die Datei in den aktuellen Ordner herunterzuladen:
Get-FileFromUri http://example.com/url/of/example/file
“`
Oder um die Datei in einen angegebenen Ordner herunterzuladen:
Get-FileFromUri http://example.com/url/of/example/file C:\example-folder
```)) {
$destination += $filename
} else {
$destination += '
Verwenden Sie sie wie folgt, um die Datei in den aktuellen Ordner herunterzuladen:
&001
Oder um die Datei in einen angegebenen Ordner herunterzuladen:
&001 + $filename
}
$webclient = New-Object System.Net.webclient
$webclient.downloadfile($fUri.AbsoluteUri, $destination)
write-host -ForegroundColor DarkGreen "downloaded '$($fUri.AbsoluteUri)' to '$($destination)'"
} catch {
write-host -ForegroundColor DarkRed $_.Exception.Message
}
}
}
Verwenden Sie sie wie folgt, um die Datei in den aktuellen Ordner herunterzuladen:
&001
Oder um die Datei in einen angegebenen Ordner herunterzuladen:
&001