Ladda hem "redirected urls" via PowerShell

Permalänk
Medlem

Ladda hem "redirected urls" via PowerShell

Hejsan,

Jag försöker bygga ihop ett script som laddar hem senaste versionen av vissa program och sen gör en tyst installation, men jag har lite problem med att ladda hem filer med omdirigerade länkar, som ex. 7-Zip nedanför.

$FileName = Split-Path $RURL -Leaf
$URL=Invoke-WebRequest https://sourceforge.net/projects/sevenzip/files/latest/downlo... -MaximumRedirection 0
$RURL = $URL.Links | Where {$_.innerText -eq "direct link"} | Select -Expand href
Invoke-WebRequest $RURL -OutFile $PSScriptRoot\$FileName

Denna fungerar inte alltid då href ändras, vissa gånger är den slutgiltiga länken:
./7z1600.exe (då fungerar den)

Och vissa gånger ser en ex. ut så här:
./7z1600.exe?r=&ts=1463239967&use_mirror=vorboss (och när den blir så här så går det inte att skriva till disken).

Så jag vet ju att problemet uppstår pga. $FileName, är det någon som kan tipsa om en bra metod för att ex. ta bort all text efter filändelsen .exe eller .msi?

Mvh,
Dallen

Visa signatur

⚙️ Ryzen 5800X | G.Skill TridentZ 3866MHz CL14 | ASUS TUF 6900XT
🖥️ Samsung Odyssey G8 OLED ⌨️ Keychron Q4 60% 🖱️ Glorious Series One Pro
🎧 RME ADI-2-DAC FS | Focal Clear MG Pro | Sony MDR-Z7M2
📺 LG 65" GX OLED | Dynaudio Xeo 4

Permalänk
Medlem

Aha, detta fungerar!

$FileName = Split-Path $RURL.Substring(0,$RURL.IndexOf('?')) -Leaf

Visa signatur

⚙️ Ryzen 5800X | G.Skill TridentZ 3866MHz CL14 | ASUS TUF 6900XT
🖥️ Samsung Odyssey G8 OLED ⌨️ Keychron Q4 60% 🖱️ Glorious Series One Pro
🎧 RME ADI-2-DAC FS | Focal Clear MG Pro | Sony MDR-Z7M2
📺 LG 65" GX OLED | Dynaudio Xeo 4

Permalänk
Medlem

Om någon annan är lat så kommer här mitt script för att ladda ner lite filer

https://github.com/Dalle85/PowerShell/blob/master/LazyScript....

Mvh,
Dalle

Visa signatur

⚙️ Ryzen 5800X | G.Skill TridentZ 3866MHz CL14 | ASUS TUF 6900XT
🖥️ Samsung Odyssey G8 OLED ⌨️ Keychron Q4 60% 🖱️ Glorious Series One Pro
🎧 RME ADI-2-DAC FS | Focal Clear MG Pro | Sony MDR-Z7M2
📺 LG 65" GX OLED | Dynaudio Xeo 4