Le problème auquel j'ai été confronté est exactement celui-ci : http://www.linuxmisc.com/4-linux/d7863c256bccbfb6.htm
Je veux pouvoir exécuter un programme qui prend stdin et écrit des données. quand j'en ai envie. Je peux le faire avec des pipes nommés fifo. par exemple :
txtplay < named_pipe.fifo
echo "Hello World" > named_pipe.fifo
Toutefois, cette méthode présente l'inconvénient de faire sortir la première commande de l'application après la fin de la seconde. Ce que je veux, c'est la même chose que :
txtplay
Je peux donc introduire mes données quand je le souhaite, sans m'inquiéter de ce qui se passe dans mon pays. de la fin du fichier. Malheureusement, je ne peux pas simplement faire cela, car je car je veux que les données qui lui sont envoyées soient traitées par un filtre avant que le programme ne les voie. avant que le programme ne les voie.
Pourquoi ne pas simplement charger le fichier données ? C'est trop lent.
Ce que je veux, en fait, c'est un moyen de rediriger la sortie d'un fichier vers un fifo nommé pipe, sans la fin du fichier. Pendant que j'y suis comment fonctionne cette histoire de fin de fichier ? Existe-t-il une commande spéciale "EOF", ou est-ce que c'est lorsque plus aucune donnée n'est reçue, ou lorsque le programme d'origine produisant les les données se termine ?
Existe-t-il une solution à ce problème ?