mercredi 7 mars 2012

Linux QuickTip: Descarga y Un alquitrán en un solo paso

La mayoría de las veces, cuando descargo algo que es un archivo histórico de algún tipo - por lo general un archivo comprimido o un archivo zip. Esto podría ser parte del código fuente para una aplicación que no está incluido en el árbol de Portage de Gentoo, alguna documentación de una aplicación corporativa interna, o incluso algo tan mundano como una nueva instalación de WordPress.

La forma tradicional de descargar y descomprimir algo en el terminal sería algo como esto:

wget http://goo.gl/DygS

tar xvzf latest.tar.gz

latest.tar.gz rm

O tal vez la forma más compacta:

wget http://goo.gl/DygS & & Tar xvzf latest.tar.gz & & latest.tar.gz rm

De cualquier manera es un poco torpe. Esta es una operación muy simple, una concha de gran alcance como bash debe permitir que tal tarea a realizar de una manera más "mancha" que forma.

Bueno, gracias a un poco útil comando "curl", y que podamos lograr el desorden anterior en tan sólo una declaración de hilo:

curl http://goo.gl/DygS | Tar XVZ

No hay archivos temporales para quitarse de encima, no andar por ahí con los símbolos de unión. En resumen, un muy compacto, el mando eficaz. De hecho, desde un punto de vista teórico, el método de enrollamiento puede ser más rápido que el lío concatenado wget / tar / rm ya que la tubería stdout usar la memoria RAM como un amortiguador, si es posible, mientras que wget y tar (con la opción-f) debe de lectura / escritura directamente desde un disco.

Por cierto, tar con la opción-v (la forma en que lo está utilizando en todos los ejemplos anteriores) imprime cada nombre de archivo en la salida estándar como cada uno es desempaquetado. Esto se puede conseguir en el camino del buen rizo, la salida de ncurses que muestra el estado de descarga. Podemos silencio alquitrán invocándolo sin-v así:

curl http://goo.gl/DygS | Tar xz

Y eso es todo lo que hay!

Aucun commentaire:

Enregistrer un commentaire