问题标签 [fstat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 在 C 中获取文件的权限
我正在寻找一种方法来检查并确保文件可读、可写并且存在,如果不是,我想打印一条消息说明这一点。我相信我正在寻找的信息可以使用 fstat() 找到,我只是不知道获取它的正确方法。
如果我尝试使用 O_RDRW 打开不可读、不可写或不存在的文件,则 open 设置了特定的 errno,我认为这将是理想的解决方案。
这是我尝试过的:
我在尝试编译时收到以下错误:
c - 读取后的 fstat 行为
在许多情况下,我看到在从调用open分配文件描述符之后直接执行fstat调用:
如果已经执行了read first 调用, fstat 的行为是否会有所不同?
“行为不同”是指:fstat 的返回值或“struct stat”缓冲区输出中的任何内容在那种情况下是否不同?
stat_log 的任何与大小相关的成员现在是否代表剩余要读取的文件的大小?
如果我已经读到了文件的末尾,那么之后执行对 fstat 的调用会导致失败吗?(fstat 返回 -1)
该 fstat 文档似乎没有表明文件描述符需要引用尚未读取的文件。你有没有发现任何其他的指示?
c++ - 如何使用 mmap 获取共享文件的进程数?
有什么方法可以获取映射到特定文件的进程数?
实际上,我想在所有进程都关闭时删除由多个进程共享的文件。有没有办法做到这一点?
我尝试使用fstat
函数调用来获取数量,hard links
但由于映射后我正在关闭文件,所以stat.st_nlink
总是如此0
。
c - Printing info of a file/director (inode)
I want to print some information of a directory. My code is:
I'm getting some warnings:
Arrows show the line of each warning. Can you help? Thanks in advance!
c - 使用 fstat() 与 stat() 的优势是什么?
如果我有一个具有已知文件描述符的打开文件,那么使用fstat()
, 与 相比有什么优势stat()
?为什么不是只有一个功能?
python - 如何从statsmodels python中的results.f_test中提取F统计量和P值
我运行 OLS.fit() 并使用拟合模型来获取特定类别的 f 值,例如 ANCOVA 中。
结果的形式为
我怎样才能从这种格式中获取 F 数组和 p 值?还是有可能?
c++ - 检查 fstream 是文件还是目录
我正在使用 C++ fstream 来读取配置文件。
现在,如果我传递一个目录的路径,它会默默地忽略它。例如my_file.good()
返回真,即使my_filename
是一个目录。由于这是我的程序的意外输入,我喜欢检查它并抛出异常。
如何检查刚刚打开的 fstream 是否为常规文件、目录或流?
我似乎无法找到一种方法:
- 从给定的 ifstream 中获取文件描述符。
- 使用其他机制在 ifstream 中查找此信息。
在一些论坛讨论中,有人建议两者都不可能,因为这取决于操作系统,因此永远不可能成为 fstream C++ 标准的一部分。
我能想到的唯一选择是重写我的代码以完全摆脱 ifstream 并诉诸文件描述符 ( *fp
) 的 C 方法,以及fstat()
:
我更喜欢fstream。因此,我的问题。
c - fstat() 返回 0,文件大小为 0,errno 为 11
我正在我的代码中尝试以下内容:-
我得到的输出是:-
大小为0和错误号11的原因是什么?有没有其他方法可以获取文件的大小?
注意:这里Netdev->queue_fd[class_id]
是一个文件描述符。在不同的调用中,n_bytes 的值在 {41,1514,66,..} 之间变化。(总是大于 0)
谢谢
c - stat()、fstat()、lstat() 和 fopen();如何编写 TOCTOU 受保护的系统独立代码
几个星期以来我一直在处理一个问题,现在更新需要独立于系统的 20 年代码(在 Linux 和 Windows 上都可以工作)。它涉及检查时间、使用时间 (TOCTOU) 问题。我在这里做了一个线程,但它并没有走得很远,在思考了一段时间并深入研究了这个问题之后,我想我对我的问题有了更好的理解。也许我也可以问好一点...
根据我的阅读,代码需要检查文件是否存在,是否可以访问,打开文件,执行一些操作,最后关闭文件。似乎最好的方法是调用lstat()
,调用fopen()
,调用fstat()
(以排除 TOCTOU),然后执行操作并关闭文件。
但是,我一直相信lstat()
并且fstat()
是 POSIX 定义的,而不是C 标准定义的,排除了它们用于与系统无关的程序,同样的方式open()
不应该用于交叉兼容性。你将如何实现这一点?
如果你看我的第一篇文章,你可以看到 20 年前的开发人员使用 C 预处理器将代码切割成交叉兼容的部分,但即使我这样做了,我也不知道要替换什么lstat()
或fstat()
用什么(他们的Windows 对应)。
编辑:在这篇文章中添加了缩写代码;如果有不清楚的地方,请转到原帖
c - C语言中lstat fstat和stat的区别
我用 C 编写了一个学校作业,以在文件系统中搜索目录、常规文件和符号链接。现在我lstat
用来获取有关项目的信息。
lstat
fstat
那么和stat
系统调用有什么区别呢?