Jak stáhnout soubor pomocí příkazu PowerShell ve Windows 10

Operační systém Windows 10 standardně obsahuje nástroj Windows PowerShell. Tento nástroj dokonce umožňuje nahradit klasický příkazový řádek, který se nachází v nabídce Power User. Stejně jako příkazový řádek, i PowerShell umožňuje uživatelům provádět na ploše různé konfigurační operace. Můžete například odinstalovat výchozí aplikace, nebo jej využít pro zcela základní úkony, jako je stahování souborů. S jednoduchým příkazem tak můžete stáhnout nejen veřejně dostupný soubor, ale i soubory, které vyžadují před stažením ověření, například soubory z vašeho úložiště Dropbox. V následujícím textu si tento proces podrobněji rozebereme.

Základní příkazy, které budete potřebovat, jsou:

$client = new-object System.Net.WebClient
$client.DownloadFile("Adresa ke stažení","Cíl uložení")

V uvedeném příkazu je třeba nahradit „Adresa ke stažení“ URL adresou souboru, který chcete stáhnout. URL adresa musí být uzavřena v uvozovkách, přičemž závorky jsou součástí syntaxe. Dále nahraďte „Cíl uložení“ cestou, kam chcete soubor uložit, včetně jeho názvu a přípony. Název souboru si můžete zvolit libovolný, ale je důležité zadat správnou příponu souboru. PowerShell automaticky nevytváří složky, proto je nezbytné, aby složka, do které chcete soubor uložit, již existovala.

Kompletní příkaz by mohl vypadat například takto:

$client = new-object System.Net.WebClient
$client.DownloadFile("https://i.imgur.com/JnphmRt.jpg","C:UsersFatima WahabDesktopcat.jpg")

Pokud se pokoušíte stáhnout soubor, který vyžaduje přihlášení do určité služby, vložte tento příkaz mezi první dva řádky:

$client.Credentials =  Get-Credential

Po provedení tohoto kroku se na obrazovce objeví výzva k zadání uživatelského jména a hesla. Je důležité si předem zjistit, jaké konkrétní přihlašovací údaje budete potřebovat, jelikož výzva neupřesňuje, zda se jedná o přihlašovací údaje k účtu Google nebo třeba k Dropboxu.

Příkaz doplněný o autentizaci pak vypadá následovně:

$client = new-object System.Net.WebClient
$client.Credentials = Get-Credential
$client.DownloadFile("https://i.imgur.com/JnphmRt.jpg","C:UsersFatima WahabDesktopcat.jpg")

Je nezbytné používat přímý odkaz na soubor. Odkazy na webové stránky s tlačítkem pro stažení souboru nebudou fungovat. V takovém případě se zobrazí buď chybové hlášení, nebo se místo souboru stáhne samotná webová stránka.