我使用C语言和Linux OS作为我的编程平台。我想知道如何以编程方式创建只读文件夹?用于Linux或类Unix系统的C语言中是否有mkdir命令?
感谢。
答案 0 :(得分:5)
执行此操作的方法是使用mkdir(2)
创建文件夹,使用您希望它拥有的文件填充它,使用stat(2)
获取当前权限,屏蔽写入位,然后使用chmod(2)
设置权限。
答案 1 :(得分:3)
您可以使用mkdir系统调用:
int mkdir (const char *filename, mode_t mode);
要创建新创建的文件夹RO(无写入且无执行权限),您可以使用here所述的mode
参数
答案 2 :(得分:1)
你可以使用这个:
#include <sys/stat.h>
#include <sys/types.h>
int mkdir(const char *pathname, mode_t mode);
答案 3 :(得分:1)
您可以使用mkdir()
功能
梗概:
#include <sys/stat.h>
int mkdir(const char *path, mode_t mode);
例如,要创建一个只能由当前用户访问的名为“hello”的文件夹:
mkdir("hello", 0700); /*the second argument is the permission mask*/
有关终端上的更多信息类型
man 2 mkdir
如果你觉得有创意,你可以用更天真的方式做到这一点
system("mkdir hello");
system("chmod 700 hello");
但是没有理由这样做......
答案 4 :(得分:0)
umask应该有效
#include <stat.h>