como posso baixar páginas da web a partir da linha de comando no windows

1

Bem, estou tentando fazer alguma automação usando o arquivo em lote para acelerar minha rotina diária no trabalho, e preciso resolver essas pequenas perguntas:

  1. Desejo instalar o comando wget, mas usando apenas o Prompt de Comando do Windows
  2. Quero fazer o download de algumas coisas armazenadas no servidor http on-line
  3. Essas "coisas" precisam ser baixadas e colocadas na mesma pasta em que meu arquivo de lote reside
  4. Eu quero que essas coisas sejam executadas e meu arquivo de lote seja excluído
  5. Precisa executar todas as operações sem "pedir permissão" do administrador

Por favor, vocês podem fazer isso por mim? Ou talvez dar alguma ajuda nos primeiros passos?

    
por DaMonki 25.01.2016 / 01:44

1 resposta

2

Essa resposta depende de ter o PowerShell 3.0 para usar o cmdlet Invoke-WebRequest em vez de wget. Ele pode ser baixado em aqui

Você pode conseguir isso sem criar um arquivo para executá-lo, desde o início. Eu imagino que você está remotamente disparando essa tarefa de alguma forma, nesse caso você pode fazer o seguinte:

powershell.exe -Command "& {Invoke-WebRequest http://google.com -OutFile C:\Path\To\File\out.html}"

Dessa forma, você não deixa rastros de um arquivo de lote e pode escolher o local onde deseja que o arquivo seja colocado.

Para verificar se a versão do PowerShell instalada é adequada antes de executar o comando, coloque-a em uma instrução if assim:

powershell.exe -Command "& {if($PSversionTable.PSVersion.Major -ge 3) {Invoke-WebRequest http://google.com -OutFile C:\Path\To\File\out.html}}"
    
por 25.01.2016 / 03:09