Linux QuickTip: lejupielāde un vienlaicīga atkārtošana

Linux QuickTip: lejupielāde un vienlaicīga atkārtošana
Linux QuickTip: lejupielāde un vienlaicīga atkārtošana

Video: Linux QuickTip: lejupielāde un vienlaicīga atkārtošana

Video: Linux QuickTip: lejupielāde un vienlaicīga atkārtošana
Video: Freeze Panes in Excel 2007 Tutorial - YouTube 2024, Aprīlis
Anonim

Lielāko daļu laika, kad es kaut ko lejupielādēju, tas ir sava veida failu arhīvs - parasti tas ir tarball vai zip fails. Tas varētu būt daži pirmkodi lietojumprogrammai, kas nav iekļauta Gentoo Portage kokā, daži iekšējās korporācijas lietotnes dokumenti vai pat kaut kas tikpat vienkāršs kā jauna WordPress instalācija.

Tradicionāls veids, kā lejupielādēt un atlaist kaut ko terminālā, būtu šāds:

wget https://wordpress.org/latest.tar.gz

tar xvzf latest.tar.gz

rm latest.tar.gz

Vai, iespējams, kompakta forma:

wget https://wordpress.org/latest.tar.gz && tar xvzf latest.tar.gz && rm latest.tar.gz

Katrā ziņā tas ir nedaudz neveikls. Šī ir ļoti vienkārša darbība, jaudīgs apvalks, piemēram, bash, ļauj šādiem uzdevumiem veikt vairāk "slidens" veidā.

Nu, pateicoties noderīgai mazai komandai "curl", mēs faktiski varam izpildīt sajaukšanas iepriekš tikai vienā piped paziņojumu:

curl https://wordpress.org/latest.tar.gz | tar xvz

Nav pagaidu failu, lai atbrīvotos no tā, ka neesat sajukuši ar ampersandiem. Īsi sakot, ļoti kompakta, efektīva komanda. Faktiski no teorētiskā viedokļa čokurošanās metode var būt ātrāka nekā sakabinātais wget / tar / rm maisījums, jo stdout cauruļvadi, ja iespējams, izmantos RAM kā buferi, bet wget un tar (ar -f slēdzi) ir jālasa / jāraksta tieši no diska.

Starp citu, darva ar opciju -v (tā, kā mēs to lietojam visos iepriekšminētajos piemēros) izdrukā katru faila nosaukumu uz stdout, jo katrs no tiem nav rakstīts. Tas var būt veids, kā čokurošanās ir jauka, ncurses produkcija, kas parāda lejupielādes statusu. Mēs varam klusēt darvu, to piesaucot bez -v šādi:

curl https://wordpress.org/latest.tar.gz | tar xz

Un tas viss ir tā!

Ieteicams: