Qual é a diferença entre quem lp e quem | lp?

1

Por que o who > lp cria um arquivo, mas who | lp lidera a saída para o programa lp ?

Qual é o princípio subjacente por trás desses dois comandos simples? Alguém pode explicar isso com um exemplo?

    
por munish 20.11.2012 / 17:43

1 resposta

5

> é o redirecionamento para um arquivo. | é um redirecionamento para um processo através do uso de um pipe.

O último essencialmente aponta o descritor de arquivo 1 ( STDOUT ) de um processo para um canal que leva ao descritor de arquivo 0 ( STDIN ) de outro processo. Uma operação de redirecionamento de arquivo não é tão complexa, ele simplesmente pega um FD e o copia para um arquivo.

    
por 20.11.2012 / 17:44