使用cat命令,为什么结果会这样打印?

时间:2019-04-11 15:23:10

标签: file-pointer

># cat /etc/passwd > test 
># cat < test >> test 

我在这样的提示符下输入。

然后,该命令的结果是测试文件的大小迅速大量增加。 为什么会发生这种情况?

2 个答案:

答案 0 :(得分:1)

在第二个命令中,您要告诉操作系统:

  1. 打开[x=-117.81, y=49.37, z=70.15]进行阅读(test
  2. 打开< test进行写,然后搜索到末尾(test

然后>> test从当前读取的文件指针读取一个块,并将该块写入当前的写入文件指针,直到到达末尾。但是,由于文件每次写入都会不断增长,因此读取块永远不会到达实际末尾,并且会一直持续下去。

答案 1 :(得分:0)

看起来您读写同一文件("test")。显然您的计算机写入速度快于读取速度。读取未获得EOF(文件末尾),因此文件增长。

这是一个有趣的情况,在哪个设备/文件系统类型文件上创建了“ test”文件?