Quando executo google-chrome 2>&1 > /dev/null &
e volto ao prompt e visito um site com, digamos, um certificado inválido, ainda recebo erros na tela do meu console. por exemplo.
neubert@LAPTOP:~/folder$ [32094:32113:1228/101803.899469:ERROR:ssl_client_socket_impl.cc(975)] handshake failed; returned -1, SSL error code 1, net_error -202
[32094:32113:1228/101804.014732:ERROR:ssl_client_socket_impl.cc(975)] handshake failed; returned -1, SSL error code 1, net_error -202
Eu não entendo. 2>&1
deve redirecionar stderr para stdout e, em seguida, > /dev/null
redirecionar ambos para/dev/null. Se essa é uma análise correta do que esse comando está fazendo, por que ainda estou recebendo mensagens aleatórias do navegador? E como faço para que isso não aconteça?
Para descartar qualquer saída assim
STDOUT
&STDERR
, você precisa redirecionar assim:Sua sintaxe está incorreta, você está apenas redirecionando
STDOUT
, por isso recebeu mensagens no prompt. A ordem dos redirecionamentos é significativa:O comando acima direcionará a saída padrão (
STDOUT
) E o erro padrão (STDERR
) para o arquivo dirlist .Enquanto este comando:
direciona apenas a saída padrão (
STDOUT
) para o arquivo dirlist , porque o erro padrão foi feito uma cópia da saída padrão antes da saída padrão ser redirecionada para dirlist.Onde dirlist é igual
/dev/null
nesse caso.Referência