如何使用c++;在linux上 我想用C++在Linux中创建一个文件,它具有特定的文件权限(1644)。我知道我可以用CHMOD来实现这个,但是我想通过C++编程。

如何使用c++;在linux上 我想用C++在Linux中创建一个文件,它具有特定的文件权限(1644)。我知道我可以用CHMOD来实现这个,但是我想通过C++编程。,c++,linux,file,chmod,C++,Linux,File,Chmod,这可能吗?请帮忙 谢谢。您需要在sys/stat.h中使用struct stat man 2 stat查看各种st_模式字段值。用于检索权限,然后使用更改权限 更一般地说,要了解某些(命令行)程序(例如,/bin/chmod)执行的系统调用,请使用…您可以使用sys/stat.h中的chmod函数: int chmod(const char *path, mode_t mode); 比如: #include <sys/stat.h> ... if (!chmod("/tmp/tes

这可能吗?请帮忙


谢谢。

您需要在sys/stat.h中使用struct stat

man 2 stat查看各种st_模式字段值。

用于检索权限,然后使用更改权限


更一般地说,要了解某些(命令行)程序(例如,
/bin/chmod
)执行的系统调用,请使用…

您可以使用sys/stat.h中的chmod函数:

int chmod(const char *path, mode_t mode);
比如:

#include <sys/stat.h>
...
if (!chmod("/tmp/testfile",
        S_ISVTX |   // Sticky bit
        S_IRUSR | // User read
        S_IWUSR | // User write
        S_IRGRP | // Group read
        S_IROTH   // Other read
        ))
{
    // Handle error case
}
#包括
...
如果(!chmod(“/tmp/testfile”,
S_ISVTX |//粘性位
S_IRUSR |//用户读取
S_IWUSR |//用户写入
S_IRGRP |//组读取
S_IROTH//其他读取
))
{
//处理错误案例
}