DEV Community

Fazendo download de arquivos

Em alguns momentos, pode ser preciso que nosso script faça o download de algum componente ou arquivo, como um executável atualizado.
Mas será que podemos fazer isso com Powershell?

Sim, conseguimos fazer, e pode ser uma solução bem interessante para manter um script de instalação sempre atualizado. Claro que dependemos que a URL esteja atualizada, mas é interessante sabermos como fazer isso.

Para exemplificar, vamos pegar um ZIP do repositório que mantenho os exemplos que uso nos textos publicados nesse blog e depois vamos descompactar os arquivos. Nesse exemplo vamos simular um pouco do processo que uma ferramenta GIT faria para receber o ambiente e tornar ele disponível localmente.

Para fazermos o download, utilizaremos a função Invoke-WebRequest, informando a URL e o arquivo de saída que queremos.

Para deixar mais organizado, seguindo com essa ideia de simular uma ferramenta de GIT, vamos:

  1. Criar uma pasta na raiz do sistema chamada MyGIT
  2. Fazer o download no APP data
  3. Descompactar os arquivos na pasta que criamos
  4. Limpar nosso download

Para fazermos o processo de descompactar, utilizaremos a função Expand-Archive, passando como parâmetro o local do arquivo e onde queremos deixar o arquivo descompactado.

Como isso fica em código?

Com isso podemos de forma funcional simular esse comportamento de fazer o download das pastas e organizar os arquivos. Claro que não é o único uso, como exemplo vou deixar um script que escrevi para o download e configuração de uma ferramenta:

Com isso podemos tornar nossos scripts mais independentes e minimizando a necessidade de manutenção. Caso tenhamos uma URL sempre atualizada pelo fornecedor, o script não vai precisar de nenhuma alteração para continuar funcionando.

Top comments (0)