函数mkdir、mkdirat和emdir

一、目录的权限位

  • 目录的权限位,至少要设置一个执行许可位。即 rwx 中的那个 x 位。如果不设置,就没办法使用 cd 命令进入目录,也无法读取目录下的文件内容。所以,这个位是必须的。
  • 目录的写权限位。如果未设置写权限位(w 位),将导致无法向目录文件中写入目录项(dir_entry 结构)。比如不能使用 touch 命令创建文件。
  • 目录的读权限位。如果未设置读权限位,将导致无法读取目录文件中的目录项。比如你不能使用 ls 命令查看目录项的具体内容。

 

二、主要函数应用

1.mkdir函数原型: 

#include <sys/stat.h>
int mkdir(const char *pathname, mode_t mode);
                                        返回值:若成功,返回0;若失败,返回-1
                                                   
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <stdio.h>

int main(int argc, char* argv[]) 
{
  if (mkdir(argv[1], 0775) == -1) { // 权限位设置为 0775 注意前面的 0 不能少,它表示 8 进制的数。
    perror("mkdir");
    return -1; 
  }
  return 0;
}

输出结果:

三、参考资料

1. 23-与目录有关的函数-mkdir 与 rmdir 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值