Lagre en SSH-startet nedlasting i en lokal fil
Velg mellom en lokal nedlasting via en proxy og et fjernhent etterfulgt av en overføring, og hold kommandoutdata adskilt fra filens bytes.
Å kjøre en nedlaster via SSH og å kjøre en lokal nedlaster via en ekstern proxy plasserer nedlastingen på forskjellige steder:
| Oppsett | Hvem henter nettstedet? | Hvor filen skrives |
|---|---|---|
| Lokal nedlaster via en ekstern proxy | Den lokale HTTP-klienten eier forespørselen; proxyen bærer den | Den lokale nedlasterens utdatasti |
| Nedlaster startet via SSH | Et program på fjernmaskinen | Dens eksterne sti, med mindre data eksplisitt fraktes tilbake |
Med en autorisert SSH-konto og curl installert eksternt kan du frakte artefakten tilbake på standardutdata:
ssh -T [email protected] 'curl --fail --silent --show-error https://downloads.example/file.bin' > file.partErstatt eksempelkontoen og URL-en. Omdirigeringen står utenfor den siterte fjernkommandoen, så det lokale skallet åpner file.part. Setter du den inn i fjernkommandoen, tilhører stien i stedet fjernmiljøet.
Bruk en fersk midlertidig sti: det lokale skallet kan opprette eller avkorte filen før fjernoperasjonen lykkes. Kontroller SSH-ens avslutningsresultat og artefakten før du gir den sitt endelige navn.
Standardutdata må bare inneholde artefaktens bytes. Hilsener, fremdriftsbannere eller innpakningsmeldinger kan ødelegge den; diagnostikk hører på standardfeil. En fjernkommando som lagrer til sitt eget filnavn, sender kanskje ingen bytes tilbake i det hele tatt. Bevar nedlasterens avslutningsresultat gjennom enhver innpakning.
Du kan i stedet lagre eksternt og overføre filen med SFTP. Hvis SSH allerede bruker en proxyhjelper, gjenbruk den SSH-vertsoppføringen for overføringen. Hvis målet er en lokal proxy-arbeidsflyt, hold nedlasteren lokal og konfigurer det støttede proxygrensesnittet.
Uansett må en fil som skal nå den bærbare datamaskinen din, fortsatt krysse nettverksforbindelsen. Valget endrer forbindelsen mot nettstedet og prosessen som utfører nedlastingen.