Assumindo bash (ou algo similar):
interactive-command --file <(generic-vault --decrypt "my-secret")
Eu quero passar a saída de um comando para outro sem gravar no disco, mas o segundo comando é interativo, então passar o valor para STDIN
impedirá que o segundo comando seja alocado em pty
(por causa disso, segundo comando só aceita carregar esse valor de um arquivo por design).
O que estou tentando alcançar é algo semelhante ao seguinte:
generic-vault --decrypt "my-secret" | interactive-command --file /proc/self/fd/0
Existe alguma maneira de fazer isso, enquanto outros processos executados pelo mesmo usuário não serão capazes de visualizar a saída do primeiro processo?
Assumindo bash (ou algo similar):
interactive-command --file <(generic-vault --decrypt "my-secret")
Usando pipes (e bash), você pode fazer algo como:
mkfifo mypipe
while sleep 1
do
generic-vault --decrypt "my-secret" > mypipe
done
E, em seguida, acesse as informações por meio de:
read data < mypipe
interactive-command --file $data