/ / Linux QuickTip: Descărcarea și dezarhivarea într-un singur pas

Linux QuickTip: Descărcarea și dezarhivarea la un pas

De cele mai multe ori, când descarc ceva esteo arhivă de fișiere de un fel - de obicei un tarball sau un fișier zip. Acesta ar putea fi un cod sursă pentru o aplicație care nu este inclusă în arborele Portage al lui Gentoo, unele documentații pentru o aplicație corporativă internă sau chiar ceva la fel de banal ca o nouă instalare WordPress.

Modul tradițional de a descărca și de a neîncărca ceva din terminal ar fi ceva de genul:

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

tar xvzf cea mai recentă.tar.gz

rm recent.tar.gz

Sau poate forma mai compactă:

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

Oricum ar fi un pic stângaci. Aceasta este o operație foarte simplă, o coajă puternică precum bash ar trebui să permită o astfel de sarcină să fie efectuată într-o manieră mai „lină”.

Ei bine, datorită unei mici comenzi utile „curl”, putem realiza de fapt dezordinea de mai sus într-o singură declarație prin conducte:

curl http://wordpress.org/latest.tar.gz | gudron xvz

Fără fișiere temporare de scăpat, fără mizerieîn jurul cu ampersands. Pe scurt, o comandă extrem de compactă și eficientă. De fapt, din punct de vedere teoretic, metoda curl poate fi mai rapidă decât dezordinea wget / tar / rm concatenată, deoarece canalizarea stdout va folosi RAM ca un tampon, dacă este posibil, în timp ce wget și tar (cu comutatorul -f) trebuie să citească / scrie direct de pe un disc.

De altfel, tar cu opțiunea -v (caleaîl folosim în toate exemplele de mai sus) tipărește fiecare nume de fișier în stdout, deoarece fiecare nu este tratat. Acest lucru poate obține calea drăguțului, ieșirea ncurses care arată starea descărcării. Putem tăcea gudronul invocându-l fără -v astfel:

curl http://wordpress.org/latest.tar.gz | gudron xz

Și asta este tot ce trebuie