Pode depender do que o seu script está fazendo com a saída do program
.
Se você está fazendo algo complicado que requer o processamento do arquivo várias vezes,
você pode estar sem sorte.
(Vamos chamar isso de "ponto zero".)
Primeiro, verifique se o programa pode ser contado, direta e inequivocamente,
para gravar sua saída na saída padrão em vez de um arquivo nomeado.
Alguns programas interpretam um argumento de apenas um traço ( -
)
significa entrada padrão ou saída padrão, conforme apropriado.
Então tente
program inputFile - | your processing
Em segundo lugar, tente o mesmo com /dev/stdout
como o nome do arquivo de saída:
program inputFile /dev/stdout | your processing
Em terceiro lugar, tente um pipe nomeado:
myFifo=$(mktemp) program inputFile "$myFifo" & your processing < "$myFifo" rm "$myFifo"