¿Hay alguna manera de ejecutar solo un comando después de que otro se haga sin un archivo temporal? Tengo un comando más largo y otro comando que formatea el resultado y lo envía a un servidor HTTP usando curl. Si solo ejecuto commandA | commandB
, commandB
comenzaré curl
, me conectaré al servidor y comenzaré a enviar datos. Debido a que commandA
lleva tanto tiempo, el servidor HTTP se agota. Puedo hacer lo que quiera concommandA > /tmp/file && commandB </tmp/file && rm -f /tmp/file
Por curiosidad, quiero saber si hay una manera de hacerlo sin el archivo temporal. Lo intenté mbuffer -m 20M -q -P 100
pero el proceso de curl aún se inicia desde el principio. Mbuffer espera hasta que termine de commandA
enviar los datos. (Los datos en sí son solo unos pocos cientos de kb como máximo)
commandA
a commandB
, ¿verdad?
commandA && commandB
?