Como posso ter erros de impressão wget, mas nada de outra maneira?
No comportamento padrão, mostra uma barra de progresso e muitas coisas.
Na versão --no-verbose ainda imprime uma linha por arquivo baixado, isso eu não quero.
A opção --quiet faz com que seja totalmente silencioso, mesmo no caso de um erro, não imprime nada.
Existe um modo no qual ele imprime erros, mas nada mais?
Use curl, não adianta adivinhar como serão todos os erros.
E se você precisar do stderr no stdout por algum motivo.
fonte
Não vejo uma opção para isso. Você precisa saber qual é o erro ou apenas se aconteceu? Se você precisar apenas saber se houve erro, poderá usar o status de saída.
Ou talvez:
E você pode mudar o gato para um comando grep, se você quiser ser chique ...
fonte
Redirecione a saída padrão para
/dev/null
, mas mantenha a saída de erro na sua escolha de shell.No bash, isso seria:
Edit: Então se
wget
comporta mal. Se todos os erros contiverem a palavra "erro", você poderá canalizar paragrep
fonte
grep
a erros de saída apenasstderr
não passa pelo cano sem ajuda.Como
wget
gera todas as mensagensstderr
, você precisa usar o redirecionamento antes de canalizá-lo para o grep:Isso pressupõe que
wget
começa suas linhas de erro com "wget:".fonte
trabalho. Mas ele sempre trunca o arquivo de saída, que você pode ou não desejar.
Curl é melhor:
No caso de um erro, ele não modifica o arquivo de saída.
fonte