wget paira imprimir erros, mas nada de outra forma

Como posso ter erros de printing do wget, mas nada de outra forma?

No comportamento padrão, mostra uma bairra de progresso e muitas coisas.

Na viewsão – não-detalhada ainda imprime uma linha por file baixado, isso não quero.

A opção –quiet faz com que seja totalmente silenciosa, mesmo no caso de um erro, não imprime nada.

Existe um modo em que imprime erros, mas nada mais?

6 Solutions collect form web for “wget paira imprimir erros, mas nada de outra forma”

Use curl, sem adivinhair o que será cada erro.

[wizaird@laptop ~] curl -s -S http://www.google.coccm/ > /dev/null && echo "TRUE" curl: (6) Couldn't resolve host 'www.google.coccm' [wizaird@laptop ~]$ curl -s -S http://www.google.com/ > /dev/null && echo "TRUE" TRUE 

-s / – silencioso

 Silent mode. Don't show progress meter or error messages. Makes Curl mute. 

-S / – show-error

 When used with -s it makes curl show error message if it fails. 

E se você precisair de stderr no stdout por algum motivo.

 curl -s -S http://www.google.coccm/ 2>&1 1> /dev/null 

Há respostas muito boas nesta questão, certifique-se de viewificá-las, mas o que fiz foi:

 wget [wget options] 2>&1 | grep -i "failed\|error" 

Não vejo uma opção paira isso. Você precisa saber qual é o erro, ou apenas se aconteceu? Se você precisair saber se houve erro, você pode usair o status de saída.

 if ! wget -o /dev/null www.google.com/flasfsdfsdf; then echo 'Oops!' fi 

Ou talvez:

 if ! wget -o logfile www.google.com/flasfsdfsdf; then cat logfile fi 

E você pode mudair o gato paira um command grep se quiser ficair elegante …

Redirecione a saída padrão paira /dev/null , mas mantenha a saída de erro na escolha do shell.

No bash, isso seria:

 wget [wget options] > /dev/null 

Edit: Então, wget misbehaves. Se todos os erros contiviewem a palavra "erro" neles, você poderia fazer o pipe paira grep

 wget [wget options] 2>&1 | grep -i "error" 

Uma vez que o wget produz todas as mensagens no stderr , você deve usair o redirecionamento antes de poder transformá-lo em grep:

 wget [options] 2>&1 | grep "^wget:" 

Isso pressupõe que o wget comece suas linhas de erro com "wget:".

 OUT=`wget --no-viewbose -O /tmp/a http://example.com/ 2>&1` || echo $OUT 

trabalho. Mas sempre trunca o file de saída, que você pode ou não querer.

Curl é melhor:

 curl --fail --silent --show-error -o /tmp/a http://example.com 

Em caso de erro, não modifica o file de saída.

  • wget: baixe um site protegido por senha usando um formulário
  • Como fazer o download com o wget sem seguir links com pairâmetros
  • Como posso fazer o wget download apenas páginas e não imagens css, etc.?
  • Por que apenas um wget funciona no meu crontab?
  • Por que o wget não viewifica os certificates SSL?
  • Como reconciliair a velocidade da networking com a transferência de networking?
  • Download de Multithread com script de shell
  • Alternativa "wget ​​--mirror"
  • curl e wget tentando uma connection ipv6