É seguro usar / dev / stdin se o programa não ler a partir da entrada padrão, mas apenas dos arquivos?

1

Eu quero canalizar a saída de um programa A em um programa B. O programa B não suporta a leitura de stdin, apenas de arquivos. Posso simplesmente fazer um | B / dev / stdin?

Na verdade, parece que funciona, mas quero ter certeza de que ao executar o pipeline, as únicas coisas que B obtém de / dev / stdin são o que A escreveu.

    
por uuu 27.07.2017 / 17:55

1 resposta

1

(Veja também o comentário do JdeBP)

Sim, mas a maneira recomendada é usar /dev/fd/0 . É mencionado, por exemplo, no livro "Programação Avançada no Ambiente UNIX" :

It allows programs that use pathname arguments to handle standard input and standard output in the same manner as other pathnames.

/dev/fd/0 e /dev/stdin são o mesmo dispositivo. Veja aqui muitas informações úteis:

por 27.07.2017 / 21:58

Tags