Existe uma maneira de executar apenas um comando depois que outro é feito sem um arquivo temporário? Eu tenho um comando mais em execução e outro comando que formata a saída e a envia para um servidor HTTP usando curl. Se eu apenas executar commandA | commandB
, commandB
iniciará curl
, conectará ao servidor e começará a enviar dados. Como commandA
leva tanto tempo, o servidor HTTP expirará. Eu posso fazer o que eu quero comcommandA > /tmp/file && commandB </tmp/file && rm -f /tmp/file
Por curiosidade, quero saber se existe uma maneira de fazer isso sem o arquivo temporário. Eu tentei, mbuffer -m 20M -q -P 100
mas o processo de enrolamento ainda é iniciado logo no início. O Mbuffer aguarda apenas o término do commandA
envio dos dados. (Os dados em si são apenas algumas centenas de kb no máximo)
commandA
para commandB
, transmite ?
commandA && commandB
?