Supposons que j'ai un binaire appelé foo
.
Si je veux rediriger la sortie de foo
vers un autre processus bar
, je pourrais écrire ./foo | bar
.
D'autre part, si je voulais time
foo, et rediriger la sortie que time
je pourrais écrire, time (./foo) | bar
.
Ma question est, comment puis-je coller la sortie de time
à la fin de la sortie de foo
et la diriger à travers le même tuyau ?
La solution suivante n'est pas celle que je recherche, car elle démarre deux instances distinctes du processus bar
, alors que je veux un seul canal partagé, vers une seule instance de bar
.
time (./foo | bar) | bar
Pour tous ceux qui sont curieux, la raison de ne pas vouloir démarrer deux instances de bar
est parce que bar
peut être un client réseau et je veux que les informations de synchronisation soient envoyées au serveur dans le cadre du même http POST
message que la sortie du processus.