- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想知道一个文件是一个目录还是一个普通文件 stat :
#define _DEFAULT_SOURCE
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
int is_regular_file(const char *path)
{
struct stat path_stat;
stat(path, &path_stat);
return S_ISREG(path_stat.st_mode);
}
我在 Mac 和 Linux 上尝试,当我打印 S_ISREG(path_stat.st_mode) 总是等于 1 并且 path_stat.st_mode 总是等于 16877 时。
最佳答案
16877
是八进制的40755
,表示一个目录(八进制40000
),权限755
(用户有完整的权利,其他人都有阅读和遍历的权利)。正如建议的那样,stat
和 chmod
手册页很有用。
举个例子,这是我的 directory-editor 的截图显示八进制模式(一个选项)而不是通常的符号模式:
关于c - stat st_mode 始终等于 16877,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46746333/
这个问题在这里已经有了答案: stat() error 'No such file or directory' when file name is returned by readdir() (2
有没有办法使用 st_mode 值来识别对象是文件还是目录? 我正在使用 paramiko lstat() 从 sftp 文件中检索 st_mode 信息。 最佳答案 是的,stat structur
这个问题已经有答案了: stat outputting the wrong values for files in a directory (1 个回答) 已关闭 9 年前。 我正在编写一个程序来打印
编译器:Code::Blocks(GNU GCC) 平台:Windows(x86) 更新:我已经通过在调用 opendir() 之前使用 chdir() 更改当前工作目录解决了该问题。所以我假设 op
为了尝试在每次程序执行时创建一个新目录,我写了以下内容: #include #include #include #include #include int main(int argc, ch
谁能告诉我 ST_MODE 函数中的数字是什么意思? 例子: >>>import os >>>stat = os.stat('/home') >>>print stat.st_mode 16877
我想知道一个文件是一个目录还是一个普通文件 stat : #define _DEFAULT_SOURCE #include #include #include int is_regular_fi
我是 Unix 编程和 C 的初学者,我有两个关于 struct stat 及其字段 st_mode 的问题: 当如下访问 st_mode 字段时,返回什么类型的数字(八进制、十进制等)? struc
我试图理解该 stat 命令的 stat 结构的 st_mode 字段的标志,但我遇到了这么困难的时期!我找到了这个例子 here , 但我真的不明白这个代码片段: if ( mode & S_IRU
我是 Unix 编程和 C 的初学者,我有两个关于 stat struc 及其字段 st_mode 的问题: 访问如下 st_mode 字段时,返回什么类型的数字(八进制、十进制等)? struct
我正在尝试使用 C 中的 stat 函数调用来打印 Linux 中文件的权限。我在网上找到了一些有用的代码,其中包含这些段 printf( (fileStat.st_mode & S_IRUSR) ?
我快要疯了。我正在尝试编写一个可以存储和提取文件的存档库。存档文件如下所示: file contents (154 byte) 每个文件都由 header ( ) 标识,其中包含四个“标签”(以逗
我有一个检查文件 st_mode 的代码: self.assertEqual(16877, os.stat(my_directory).st_mode) 只有老派的 unix 专家才能流畅地破译整数值
我正在尝试使用返回的 stat 结构中的 st_mode,该结构是我通过以下方式从 stat() 调用获得的; char *fn = "test.c" struct s
我是一名优秀的程序员,十分优秀!