/dev/null 问题

/dev/null 问题

所以我一直在摆弄 /dev/null 并移动文件到它,就像......

sudo mv test /dev/null

并阅读它......

:~$ cat /dev/null
this is a file
:~$ 

但后来我又创建了一个文件,文件内容是这是另一个文件 然后我继续读取 /dev/null,然后通过 cat 将新文件移动到 /dev/null,这就是发生的事情

:~$ cat /dev/null
:~$ 

有人可以向我解释一下发生了什么事吗?我在使用 ubuntu 18.04。

谢谢。

答案1

man null

NAME

       null, zero - data sink

DESCRIPTION

       Data written to the /dev/null and /dev/zero special files is discarded.

       Reads  from  /dev/null  always return end of file (i.e., read(2) returns 0), whereas reads
       from /dev/zero always return bytes containing zero ('\0' characters).

       These devices are typically created by:

           mknod -m 666 /dev/null c 1 3
           mknod -m 666 /dev/zero c 1 5
           chown root:root /dev/null /dev/zero

FILES

       /dev/null
       /dev/zero

NOTES

       If these devices are not writable and readable for  all  users,  many  programs  will  act
       strangely.

       Since  Linux  2.6.31, reads from /dev/zero are interruptible by signals.  (This change was
       made to help with bad latencies for large reads from /dev/zero.)

SEE ALSO

       chown(1), mknod(1), full(4)

相关内容