Existe-t-il un moyen d'exécuter une commande uniquement après qu'une autre soit effectuée sans fichier temporaire? J'ai une commande plus longue et une autre commande qui formate la sortie et l'envoie à un serveur HTTP en utilisant curl. Si je viens d'exécuter commandA | commandB
, commandB
démarre curl
, se connecte au serveur et commence à envoyer des données. Parce que cela commandA
prend tellement de temps, le serveur HTTP expirera. Je peux faire ce que je veux aveccommandA > /tmp/file && commandB </tmp/file && rm -f /tmp/file
Par curiosité, je veux savoir s'il existe un moyen de le faire sans le fichier temporaire. J'ai essayé mbuffer -m 20M -q -P 100
mais le processus de curl est toujours démarré dès le début. Mbuffer attend jusqu'à ce que commandA
la transmission des données soit terminée. (Les données elles-mêmes ne font que quelques centaines de ko au maximum)
commandA
à commandB
, n'est-ce pas?
commandA && commandB
?