Perguntas com a marcação «process-substitution»

Substituição de processo é uma forma de comunicação entre processos que permite que a entrada ou saída de um comando apareça como um arquivo (como: `<(cmd)` ou `> (cmd)`).




1
Por que a substituição do processo BASH não funciona com alguns comandos?
Ocasionalmente, a substituição do processo não funcionará conforme o esperado. Aqui está um exemplo: Entrada: gcc &lt;(echo 'int main(){return 0;}') Saída: /dev/fd/63: file not recognized: Illegal seek collect2: error: ld returned 1 exit status Entrada: Mas funciona como esperado quando usado com um comando diferente: grep main &lt;(echo 'int main(){return …




4
Como emular Substituição de Processo no Dash?
Em bash, posso usar a Substituição de Processo e tratar a saída de um processo como se fosse um arquivo salvo no disco: $ echo &lt;(ls) /dev/fd/63 $ ls -lAhF &lt;(ls) lr-x------ 1 root root 64 Sep 17 12:55 /dev/fd/63 -&gt; pipe:[1652825] infelizmente, a Substituição de Processo não é suportada …

2
A saída de substituição do processo está fora de ordem
o echo one; echo two &gt; &gt;(cat); echo three; comando fornece saída inesperada. Eu li o seguinte: Como a substituição de processo é implementada no bash? e muitos outros artigos sobre substituição de processos na internet, mas não entendo por que ela se comporta dessa maneira. Saída esperada: one two …

5
arquivos grep da lista
Estou tentando executar o grep em uma lista de algumas centenas de arquivos: $ head -n 3 &lt;(cat files.txt) admin.php ajax/accept.php ajax/add_note.php No entanto, mesmo que eu esteja procurando por uma sequência que eu sei que é encontrada nos arquivos, o seguinte não pesquisa os arquivos: $ grep -i 'foo' …


2
Bash: substituição de processo e stdin
A seguinte linha é óbvia: echo "bla" | foo | bar Mas os abaixo fazem o mesmo? echo "bla" | bar &lt;(foo) echo "bla" | bar &lt; &lt;(foo) Qual das fooe barleu "bla" de stdin e por quê? Quero dizer que, é claro, posso apenas codificá-lo e verificá-lo, mas não …




Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.