是否存在刚刚阻塞的设备文件?

是否存在刚刚阻塞的设备文件?

...类似于 /dev/null,但它只是阻止写入它的所有字节?

我需要的是一个技巧,通过阻止其输出将任意可执行文件保存在内存中。管道似乎不可用,因为输出首先写入缓冲区。

答案1

您可以使用以下方式创建命名管道(fifo)mkfifo。对此类特殊文件的写入将被阻止,直到有进程读取它为止。

$ mkfifo blocker
$ echo hello > blocker # "hangs"

在另一个会话中:

$ cat blocker
hello                  # the `echo` above unblocks after this

相关内容