Os comandos na substituição do comando, na subsituição do processo e no pipeline aceitam entradas stdin?

1

Espero cat na seguinte substituição de comando, substituição de processo e pipeline para aceitar entrada stdin, mas

  1. Por que não produz nada, depois que eu forneço stdin input hello

    $ echo $(cat)
    hello
    
  2. Por que não me permite fornecer entrada de stdin

    $ echo <(cat)
    /dev/fd/63
    
  3. qual cat aceita minha entrada de stdin hello e quais cat de saídas hello para stdout

    $ cat | cat
    hello 
    hello
    
por Tim 31.05.2016 / 00:59

1 resposta

3

  1. Você deve terminar sua entrada com EOF (Ctrl + d), caso contrário o gato não sairá.

  2. echo ecoa o fd e então sai, fechando assim o descritor de saída de cat, que em resposta sai.

  3. A entrada do primeiro gato é stdin, a saída do segundo gato é conectada ao stdout. a saída do primeiro gato e a entrada do segundo gato são conectadas junto com um tubo.

por 31.05.2016 / 01:14

Tags