Unix .txt文件中是否有任何大小/行限制?

Unix .txt文件中是否有任何大小/行限制?,unix,text,4gl,Unix,Text,4gl,这个问题看起来可能重复。但是我没有得到我正在寻找的答案 问题是,在unix中,4GL二进制文件之一是使用游标从表中获取数据,并将数据写入.txt文件。 该表包含大约5000万条记录。 二进制文件花费了很多时间,而且没有完成。.txt文件也是0字节 我想知道为什么记录没有写入.txt文件 注意:有足够的可用磁盘空间。 另外,对于3000万条记录,我可以像预期的那样获得.txt文件中的数据。您提供的信息不足以确定文件未写入的原因 在UNIX中,文本文件与任何其他文件一样,都是字节的集合。“行大小”或

这个问题看起来可能重复。但是我没有得到我正在寻找的答案

问题是,在unix中,4GL二进制文件之一是使用游标从表中获取数据,并将数据写入.txt文件。 该表包含大约5000万条记录。 二进制文件花费了很多时间,而且没有完成。
.txt
文件也是0字节

我想知道为什么记录没有写入
.txt
文件

注意:有足够的可用磁盘空间。
另外,对于3000万条记录,我可以像预期的那样获得.txt文件中的数据。

您提供的信息不足以确定文件未写入的原因

在UNIX中,文本文件与任何其他文件一样,都是字节的集合。“行大小”或“行计数”没有特定的限制(或结构),尽管很明显,一些程序可能对支持的最大行大小等有一定的限制(取决于它们的实现)

当程序开始向文件写入数据时(即,首次刷新内部缓冲区后),文件将不再为零大小,因此很明显,您的binqary一直在执行其他操作(除非在清理过程中清除文件)


尝试通过
strace
运行可执行文件以查看文件I/O活动-这将提供一些关于发生了什么的线索。

您提供的信息不足以确定文件未写入的原因

在UNIX中,文本文件与任何其他文件一样,都是字节的集合。“行大小”或“行计数”没有特定的限制(或结构),尽管很明显,一些程序可能对支持的最大行大小等有一定的限制(取决于它们的实现)

当程序开始向文件写入数据时(即,首次刷新内部缓冲区后),文件将不再为零大小,因此很明显,您的binqary一直在执行其他操作(除非在清理过程中清除文件)


尝试通过
strace
运行可执行文件以查看文件I/O活动-这将提供一些有关正在发生的事情的线索。

如果正在使用写入程序写入文件,请尝试关闭写入程序。它实现了关闭资源和刷新缓冲区剩余内容的双重目的

如果使用缓冲写入程序的任何机制,则需要刷新CPU计算输出。我曾多次遇到这种情况,几乎在所有情况下,问题都是刷新输出

特别是在java中,写入数据的最佳实践通常涉及缓冲区。因此,当达到缓冲区限制时,它会被写入文件,但在尚未达到缓冲区结束时不会被写入文件。当程序关闭而不刷新缓冲写入程序时,就会发生这种情况

因此,在您的情况下,如果所需的处理时间是合理的,但输出仍然不在文件中,这可能意味着输出已被计算并放在RAM中,但无法写入文件(表示磁盘),因为输出未被刷新


你也可以考虑问题的答案。

如果你使用一个写文件,试着关闭作者。它实现了关闭资源和刷新缓冲区剩余内容的双重目的

如果使用缓冲写入程序的任何机制,则需要刷新CPU计算输出。我曾多次遇到这种情况,几乎在所有情况下,问题都是刷新输出

特别是在java中,写入数据的最佳实践通常涉及缓冲区。因此,当达到缓冲区限制时,它会被写入文件,但在尚未达到缓冲区结束时不会被写入文件。当程序关闭而不刷新缓冲写入程序时,就会发生这种情况

因此,在您的情况下,如果所需的处理时间是合理的,但输出仍然不在文件中,这可能意味着输出已被计算并放在RAM中,但无法写入文件(表示磁盘),因为输出未被刷新


你也可以考虑问题的答案。

限制不是.txt文件(它只是一个文件一样),但是在程序中可以读/写(它们可以缓冲每行,即使在64位机器上也可以达到32位限制,这取决于字符计数器大小和内存)它和文件系统(可能限制文件大小)。.Limit不是.txt文件(它只是一个像其他任何文件一样的文件),但在程序中会读/写(它们可能会缓冲每一行,然后即使在64位机器上也可能达到32位限制,这取决于字符计数器大小和内存)它和文件系统(这可能会限制文件大小)。这应该作为对问题的评论,因为它没有列出问题的具体答案。我没有必要的信誉点来对问题发表评论。这应该作为对问题的评论,因为它没有列出问题的具体答案。我没有必要的信誉点来写评论对这个问题发表评论。