Cygwin mkfifo导致终端挂起?

Cygwin mkfifo导致终端挂起?,cygwin,mkfifo,Cygwin,Mkfifo,mkfifo是否就是不能与Cygwin一起工作?一组简单的命令,例如 $ mkfifo my_pipe $ echo "1234" > my_pipe 只会使终端永远处于光标闪烁状态。我是不是“做错了”?不,这两个命令你都没有做错,只是你的期望有点偏离了 你缺少的是管道另一端的某个东西,正在读取数据。这种明显的挂起也发生在Linux中,因此它不是CygWin问题(或者任何类型的问题,真的) 只需打开另一个窗口并输入: cat <my_pipe cat不,这两个命令你都没有做错,

mkfifo
是否就是不能与Cygwin一起工作?一组简单的命令,例如

$ mkfifo my_pipe

$ echo "1234" > my_pipe

只会使终端永远处于光标闪烁状态。我是不是“做错了”?

不,这两个命令你都没有做错,只是你的期望有点偏离了

你缺少的是管道另一端的某个东西,正在读取数据。这种明显的挂起也发生在Linux中,因此它不是CygWin问题(或者任何类型的问题,真的)

只需打开另一个窗口并输入:

cat <my_pipe

cat不,这两个命令你都没有做错,只是你的期望值有点偏离了

你缺少的是管道另一端的某个东西,正在读取数据。这种明显的挂起也发生在Linux中,因此它不是CygWin问题(或者任何类型的问题,真的)

只需打开另一个窗口并输入:

cat <my_pipe

cat命名管道的特点是两端都需要一些东西。如果管道尚未完成,则无法写入管道,因此,
echo
命令将挂起,直到有其他内容尝试从该管道读取,在您的情况下,这是永远不会发生的。

命名管道的问题是两端都需要一些内容。如果尚未完成,则无法写入管道,因此,
echo
命令将挂起,直到有其他内容尝试从该管道读取,在您的情况下,这种情况永远不会发生