Como você redireciona a resposta do wget para a saída padrão?


148

Eu tenho uma página PHP crontabdessa wgetsa cada cinco minutos (apenas para executar um pouco do código PHP), e quero enviar a saída da solicitação para o padrão, enquanto envia a wgetsaída normal para /dev/null(ou oculte-a). Não encontrei no wgetmanual.

Estou procurando algo como:

wget -o stdout http://whatever.com/page.php > /dev/null

Ninguem sabe?


5
Com o nome errado, deve ser "Como você redireciona o wget para null?".
Bob Stein

2
@ BobStein-VisiBone Acho que está intitulado corretamente. Eu queria que o wgetitem -ed fosse para ae stdouto normal stdoutfosse para null(ou seja, ignore o que geralmente é impresso e, em vez disso, imprima o corpo da resposta).
Sean Adkinson

6
Oh! Eu estou corrigido. Comecei a usar wget http://example.com/page.php -qO- (Isso é uma letra maiúscula). Esse padrão produz apenas o corpo da resposta. Era isso que você queria?
Bob Stein

Respostas:


157

wget -O - http://whatever.com/page.php > /dev/null

ou, se você desejar redirecionar também a saída de erro padrão:

wget -O - http://whatever.com/page.php > /dev/null 2>&1

ou, para codegolf :-)

wget -O-


12
Você pode adicionar -nvpara evitar que o indicador de progresso substitua a saída.
Tor Klingberg

1
Essa abordagem tem um problema - se o status da resposta não for 200, ele não imprimirá o corpo. Alguma idéia para resolvê-lo?
Imaskar 13/08/18

71

Uma versão mais simples

wget -qO- http://example.com

equivalente a

wget -q -O - http://example.com

Onde

  • -q desativa a saída do log, incluindo informações de erro
  • -O -, equivalente a -O /dev/stdout, significa despejar a página da web em um arquivo chamado /dev/stdout.

2
O primeiro funciona com o wget do BusyBox, o que é muito útil. Eu não acho que ele gosta de ter um espaço após oO
zymhan

18
wget -qO /dev/null http://whatever.com/page.php
  • -q para ficar quieto
  • -O /dev/null ignorar o conteúdo da página

6

Você também pode tentar:

wget -q -O - http://whatever.com/page.php > /dev/null 

o -qtornará "quieto"

Ou peça para que o arquivo vá para uma página temporária de html que você não se importa de ter. whatever.com/tempFile.html


3
wget -O /dev/null http://example.com/

Funciona no meu mac com o wget 1.12.

Você poderia fornecer uma explicação sobre o que seu código faz?
Tamara Wijsman

-O significa "saída de gravação para este arquivo"
thomasrutter
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.