Spara en SSH-startad nedladdning i en lokal fil
Välj mellan en lokal nedladdning via en proxy och ett fjärrhämt följt av en överföring, och håll kommandots utdata åtskilda från filens byte.
Att köra en nedladdare via SSH och att köra en lokal nedladdare via en fjärrproxy placerar nedladdningen på olika platser:
| Upplägg | Vem hämtar webbplatsen? | Var filen skrivs |
|---|---|---|
| Lokal nedladdare via en fjärrproxy | Den lokala HTTP-klienten äger begäran; proxyn bär den | Den lokala nedladdarens utdatasökväg |
| Nedladdare startad via SSH | Ett program på fjärrmaskinen | Dess fjärrsökväg, om inte data uttryckligen fraktas tillbaka |
Med ett auktoriserat SSH-konto och curl installerat på distans kan du frakta tillbaka artefakten på standardutdata:
ssh -T [email protected] 'curl --fail --silent --show-error https://downloads.example/file.bin' > file.partByt ut exempelkontot och URL:en. Omdirigeringen står utanför det citerade fjärrkommandot, så det lokala skalet öppnar file.part. Sätter du den inuti fjärrkommandot tillhör sökvägen i stället fjärrmiljön.
Använd en ny tillfällig sökväg: det lokala skalet kan skapa eller korta av filen innan fjärroperationen lyckas. Kontrollera SSH:s slutresultat och artefakten innan du ger den sitt slutliga namn.
Standardutdata får bara innehålla artefaktens byte. Hälsningar, förloppsbanderoller eller omslagsmeddelanden kan fördärva den; diagnostik hör till standardfelet. Ett fjärrkommando som sparar till sitt eget filnamn skickar kanske inga byte tillbaka alls. Bevara nedladdarens slutresultat genom alla omslag.
Du kan i stället spara på distans och överföra filen med SFTP. Om SSH redan använder en proxyhjälpare, återanvänd den SSH-värdposten för överföringen. Om målet är ett lokalt proxyarbetsflöde, håll nedladdaren lokal och konfigurera det proxygränssnitt som stöds.
Hur som helst måste en fil som ska nå din bärbara dator fortfarande korsa dess nätverksanslutning. Valet ändrar anslutningen mot webbplatsen och processen som gör nedladdningen.