Por que não “cvs --help | menos trabalho?

3

Eu não sei por quê, mas o piping cvs --help to less não funciona. Provavelmente é porque cvs --help produz não para saída padrão (1) ou saída de erro (2), mas em outro lugar. Você poderia me dizer de onde sai?

    
por Mat 14.09.2012 / 10:40

1 resposta

6

O motivo é porque existem dois tipos de saída.

  • Saída normal ( STDOUT )
  • Saída de erro ( STDERR )

cvs --help imprime as informações de ajuda para STDERR . O canal ( | ) está esperando os dados que foram gravados em STDOUT para que possam ser lidos STDIN .

Para obter o texto de ajuda de STDERR to STDOUT (para que seja legível pelo canal), é necessário redirecioná-lo.

cvs --help 2>&1 | less

Mais explicações aqui .

    
por 14.09.2012 / 10:44