Two named PIPEs (PIPE_in/PIPE_out) connected with `tail -f` | String sent to PIPE_in doesn't reach PIPE_out
1.Create named PIPEs, pipe_in and pipe_out by running:
$ mkfifo pipe_in
$ mkfifo pipe_out
2.Connect pipe_in to pipe_out:
TERM0: $ tail -f pipe_in > pipe_out
3.Send string hello world! to pipe_in and expect it to arrive at pipe_out:
TERM1: $ tail -f pipe_out
TERM2: $ echo "hello world!" > pipe_in
I can only see the string arriving at pipe_out if I kill command in 2..
It seems to be a buffering issue so I decided to run all commands above with stdbuf -i0 -e0 -o0 <command> but it didn't help...
Can anyone help with this please?
pipe fifo mkfifo
New contributor
fmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
add a comment |
1.Create named PIPEs, pipe_in and pipe_out by running:
$ mkfifo pipe_in
$ mkfifo pipe_out
2.Connect pipe_in to pipe_out:
TERM0: $ tail -f pipe_in > pipe_out
3.Send string hello world! to pipe_in and expect it to arrive at pipe_out:
TERM1: $ tail -f pipe_out
TERM2: $ echo "hello world!" > pipe_in
I can only see the string arriving at pipe_out if I kill command in 2..
It seems to be a buffering issue so I decided to run all commands above with stdbuf -i0 -e0 -o0 <command> but it didn't help...
Can anyone help with this please?
pipe fifo mkfifo
New contributor
fmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
1
Good point, @Jeff Schaller. I have just deleted that question. I find this one, here, more fundamental. As soon as I solve this one I will likely be able to solve the other one too.
– fmagno
2 hours ago
add a comment |
1.Create named PIPEs, pipe_in and pipe_out by running:
$ mkfifo pipe_in
$ mkfifo pipe_out
2.Connect pipe_in to pipe_out:
TERM0: $ tail -f pipe_in > pipe_out
3.Send string hello world! to pipe_in and expect it to arrive at pipe_out:
TERM1: $ tail -f pipe_out
TERM2: $ echo "hello world!" > pipe_in
I can only see the string arriving at pipe_out if I kill command in 2..
It seems to be a buffering issue so I decided to run all commands above with stdbuf -i0 -e0 -o0 <command> but it didn't help...
Can anyone help with this please?
pipe fifo mkfifo
New contributor
fmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
1.Create named PIPEs, pipe_in and pipe_out by running:
$ mkfifo pipe_in
$ mkfifo pipe_out
2.Connect pipe_in to pipe_out:
TERM0: $ tail -f pipe_in > pipe_out
3.Send string hello world! to pipe_in and expect it to arrive at pipe_out:
TERM1: $ tail -f pipe_out
TERM2: $ echo "hello world!" > pipe_in
I can only see the string arriving at pipe_out if I kill command in 2..
It seems to be a buffering issue so I decided to run all commands above with stdbuf -i0 -e0 -o0 <command> but it didn't help...
Can anyone help with this please?
pipe fifo mkfifo
pipe fifo mkfifo
New contributor
fmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
New contributor
fmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
New contributor
fmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
asked 2 hours ago
fmagnofmagno
61
61
New contributor
fmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
New contributor
fmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
fmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
1
Good point, @Jeff Schaller. I have just deleted that question. I find this one, here, more fundamental. As soon as I solve this one I will likely be able to solve the other one too.
– fmagno
2 hours ago
add a comment |
1
Good point, @Jeff Schaller. I have just deleted that question. I find this one, here, more fundamental. As soon as I solve this one I will likely be able to solve the other one too.
– fmagno
2 hours ago
1
1
Good point, @Jeff Schaller. I have just deleted that question. I find this one, here, more fundamental. As soon as I solve this one I will likely be able to solve the other one too.
– fmagno
2 hours ago
Good point, @Jeff Schaller. I have just deleted that question. I find this one, here, more fundamental. As soon as I solve this one I will likely be able to solve the other one too.
– fmagno
2 hours ago
add a comment |
2 Answers
2
active
oldest
votes
tail only outputs the last n lines of a file/stream. While you are still generating lines, it can not know which are the last n.
Have you tried something like cat?
It is interesting though that the tail from one pipe to the other works as expected :)
– gmagno
21 mins ago
add a comment |
Please refer to @ctrl-alt-delor's answer for the reason why it doesn't work. But you can still achieve the same purpose with cat:

New contributor
gmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "106"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
fmagno is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f505674%2ftwo-named-pipes-pipe-in-pipe-out-connected-with-tail-f-string-sent-to-pip%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
tail only outputs the last n lines of a file/stream. While you are still generating lines, it can not know which are the last n.
Have you tried something like cat?
It is interesting though that the tail from one pipe to the other works as expected :)
– gmagno
21 mins ago
add a comment |
tail only outputs the last n lines of a file/stream. While you are still generating lines, it can not know which are the last n.
Have you tried something like cat?
It is interesting though that the tail from one pipe to the other works as expected :)
– gmagno
21 mins ago
add a comment |
tail only outputs the last n lines of a file/stream. While you are still generating lines, it can not know which are the last n.
Have you tried something like cat?
tail only outputs the last n lines of a file/stream. While you are still generating lines, it can not know which are the last n.
Have you tried something like cat?
answered 2 hours ago
ctrl-alt-delorctrl-alt-delor
11.9k42260
11.9k42260
It is interesting though that the tail from one pipe to the other works as expected :)
– gmagno
21 mins ago
add a comment |
It is interesting though that the tail from one pipe to the other works as expected :)
– gmagno
21 mins ago
It is interesting though that the tail from one pipe to the other works as expected :)
– gmagno
21 mins ago
It is interesting though that the tail from one pipe to the other works as expected :)
– gmagno
21 mins ago
add a comment |
Please refer to @ctrl-alt-delor's answer for the reason why it doesn't work. But you can still achieve the same purpose with cat:

New contributor
gmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
add a comment |
Please refer to @ctrl-alt-delor's answer for the reason why it doesn't work. But you can still achieve the same purpose with cat:

New contributor
gmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
add a comment |
Please refer to @ctrl-alt-delor's answer for the reason why it doesn't work. But you can still achieve the same purpose with cat:

New contributor
gmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
Please refer to @ctrl-alt-delor's answer for the reason why it doesn't work. But you can still achieve the same purpose with cat:

New contributor
gmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
edited 32 mins ago
New contributor
gmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
answered 40 mins ago
gmagnogmagno
1013
1013
New contributor
gmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
New contributor
gmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
gmagno is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
add a comment |
add a comment |
fmagno is a new contributor. Be nice, and check out our Code of Conduct.
fmagno is a new contributor. Be nice, and check out our Code of Conduct.
fmagno is a new contributor. Be nice, and check out our Code of Conduct.
fmagno is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f505674%2ftwo-named-pipes-pipe-in-pipe-out-connected-with-tail-f-string-sent-to-pip%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
Good point, @Jeff Schaller. I have just deleted that question. I find this one, here, more fundamental. As soon as I solve this one I will likely be able to solve the other one too.
– fmagno
2 hours ago