Linux QuickTip: Baixando e desmarcando em uma etapa

Linux QuickTip: Baixando e desmarcando em uma etapa
Linux QuickTip: Baixando e desmarcando em uma etapa

Vídeo: Linux QuickTip: Baixando e desmarcando em uma etapa

Vídeo: Linux QuickTip: Baixando e desmarcando em uma etapa
Vídeo: Tutorial De Tradingview 2023 👉 Desde Cero Paso a Paso 💹 Vídeo 1 Curso De Tradingview - YouTube 2024, Novembro
Anonim

Na maioria das vezes, quando eu faço o download de algo, é um arquivo de arquivo de algum tipo - geralmente um arquivo tar ou um arquivo zip. Isso pode ser algum código-fonte de um aplicativo que não está incluído na árvore do Portage do Gentoo, alguma documentação para um aplicativo corporativo interno ou mesmo algo tão mundano quanto uma nova instalação do WordPress.

A maneira tradicional de baixar e descompactar algo no terminal seria algo assim:

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

tar xvzf latest.tar.gz

rm latest.tar.gz

Ou talvez a forma mais compacta:

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

De qualquer maneira é um pouco desajeitado. Esta é uma operação muito simples, um shell poderoso como o bash deve permitir que tal tarefa seja executada de uma maneira mais “slick”.

Bem, graças a um pequeno comando útil “curl”, podemos realmente realizar a bagunça acima em apenas uma instrução canalizada:

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

Nenhum arquivo temporário para se livrar, sem mexer com e comercial. Em resumo, um comando altamente compacto e eficiente. De fato, do ponto de vista teórico, o método curl pode ser mais rápido que o wget / tar / rm concatenado, já que o stdout usará RAM como um buffer, se possível, enquanto wget e tar (com o switch -f) devem ler / gravar diretamente de um disco.

Aliás, o tar com a opção -v (do jeito que estamos usando em todos os exemplos acima) imprime cada nome de arquivo para stdout, já que cada um é descompactado. Isso pode atrapalhar o bom desempenho de curl, ncurses, mostrando o status do download. Podemos silenciar o alcatrão invocando-o sem -v assim:

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

E isso é tudo que existe para isso!

Recomendado: