linux下C语言中mkdir和rmdir函数

【Linux C】目录相关的操作函数 mkdir、rmdir、opendir、readdir、closedir、getcwd、chdir 本文介绍Linux下目录操作相关的一些函数。 mkdir、rmdir、opendir、readdir、closedir、getcwd、chdir。 我们将从函数原型、头文件、函数作用、参数含义、返回值以及示例代码几个方面进行总结。 阅读详情
       mkdir函数用于创建目录。格式如下:

      #include<sys/types.h>

      #include<sys/stat.h>

      #include<unistd.h>

      int mkdir(const char *pathname,mode_t mode);

     其中参数pathname是新创建目录的目录名,mode指定该目录的访问权限,这些位将受到文件创建方式屏蔽(umask)的修正。

      该函数创建一个名为pathname的空目录,此目录自动含有“.”和“..”2个登记项。这个新创建目录的用户ID被设置为调用进程的有效用户ID,其组则为父目录的组ID或者进程的有效组ID。

     若调用成功,mkdir将更新该目录的st_atime、st_ctime和st_mtime,同时更新其父目录的st_ctime和st_mtime,然后返回0。若调用失败,mkdir将返回-1.

     由pathname指定的新目录的父目录必须存在,并且调用进程必须具有该父目录的写权限以及pathname涉及的各个分路径目录的搜寻权限。

     rndir函数删除一个空目录,它的格式如下:

    #include<unistd.h>

    int rmdir(const char *pathname);

     使用rmdir函数时,目录必须为空,否则调用失败,函数返回-1.成功时,函数返回0.

      例子:创建一个新目录,然后删除此目录。

#include<sys/types.h>
#include<unistd.h>
#include<limits.h>
#include<sys/stat.h>

int main(int argc,char *argv[])
{
    char path[1000];
    char file[1000];
    /*
    if(argc!=2)
   {
      printf("Usage mk<pathname>\n");
    return 1;
   }
*/
argv[1] = "test";
getwd(path);   //取得当前工作目录
printf("current dirctory is:%s\n",path);
if(mkdir(argv[1],S_IRWXU|S_IRGRP|S_IXGRP|S_IROTH)<0)//创建新目录
{
  printf("mkdir failed\n");
  return 2;
}

if(chdir(argv[1])<0)   //改变当前工作目录为新目录
{
   printf("chdir failed \n");
   return 3;
}

getwd(path);
printf("mkdir successed.\n New current directory is:%s\n",path);
//rmdir(path);  //删除新建目录
printf("%s is removed\n",path);
return 0;

}


如何在Linux(ubantu)系统通过c程序创建目录和删除目录 如何在Linux(ubantu)系统通过c程序创建目录及删除目录 文章目录如何在Linux(ubantu)系统通过c程序创建目录及删除目录创建目录删除目录 创建目录 使用下面命令新建一个c文件 vim demo1.c 然后在文档内输入下面的程序 #include<sys/stat.h> #include<sys/types.h> #include<stdio.h> int main() { int ret; ret=mkdir("./dir01",S_IRU 阅读详情

相关推荐

C语言目录操作详解

每调用一次 readdir 函数会返回一个struct dirent的地址,存放了本次读取到的内容,它的原理与fgets函数读取文件相同。getcwd函数把当前工作目录存入buf中,如果目录名超出了参数size长度,函数返回NULL,如果成功,返回buf。文件是存放在目录中的,在处理文件之前,必须先知道目录中有哪些文件,所以要获取目录中的文件列表。文件存放在某目录中,该目录下还会有多级子目录。列出该目录及其子目录下全部的文件名。命令来创建/删除目录,C程序中用。来显示当前的工作目录。函数来创建/删除目录。

喜欢编程,将自己会的知识分享给大家 3687

mkdir函数

转载:https://blog.youkuaiyun.com/weixin_44705391/article/details/115945654 一、创建目录 1.1 direct.h 头文件 int mkdir(const char *path,mode_t mode); 函数名: mkdir    功 能: 建立一个目录    用 法: int mkdir( const char *dirname );    头文件库:direct.h    返回值:创建一个目录,若成功则返回0,否则返回-1 1.2 Li

modi000的博客 8339

Linux下C语言中创建和删除目录的函数

这两个函数允许程序员在C代码中动态地创建和删除目录,从而实现对文件系统的管理。下面我将详细介绍这两个函数的使用方法,并提供相应的源代码示例。函数,我们可以在C代码中方便地进行目录的创建和删除操作。记得在使用这些函数时,要进行错误检查,以确保操作的成功执行。函数只能删除空的目录。如果要删除非空目录,需要使用其他的方法,比如使用。以上就是在Linux下使用C语言创建和删除目录的方法。函数用于创建一个新的目录。函数用于删除一个空的目录。下面是一个示例代码,演示如何使用。下面是一个示例代码,演示如何使用。

ByteGlide的博客 403

c语言删除非空文件夹

rmdir rmdir() 删除空的文件夹 unlink unlink(); man page 的解释: unlink() deletes a name from the filesystem. If that name was the last link to a file and no processes have the file open, the file is deleted and the space it was using is made available for r

longjiang321的博客 3061

linux下C语言中的mkdir函数与rmdir函数

以下是对C语言中的mkdir函数与rmdir函数进行了详细的分析介绍,需要的朋友可以过来参考下

数字IC设计(8)之AHB-Lite总线(持续更新)

AHB总线全称Advanced High-performance Bus,意为先进高性能总线。推出该总线的目的是补充APB总线在性能上的不足,APB总线适合挂载低速外设,所以AHB总线用来挂载高性能的外设,这样子可以分工合作,节约资源。AHB总线可以实现多主多从的连接,此时需要设计仲裁机和matrix(矩阵),AHB-Lite一般用于一主多从,此时则不需要仲裁机和matrix,但是也可以用AHB-Lite来实现多主多从,就是设计多个layer,每个layer是一主多从,再把各个layer连起来;

qq_69440734的博客 2250

C语言 _mkdir创建多级文件夹

mkdir 创建多级目录

qq_42760354的博客 2437

从零到一:手把手教你用Verilog在FPGA上构建自己的FFT处理器(不依赖IP核)

本文详细介绍了如何从零开始使用Verilog在FPGA上构建256点FFT处理器,不依赖商业IP核。内容涵盖FFT算法基础、蝶形运算单元设计、整体架构实现、时序收敛优化策略以及测试验证方法,重点提升FPGA上算法部署的运行效率与资源利用率。

vv45678的博客 821

Linux 使用C语言删除一个非空的目录

Linux 使用C语言删除一个非空的目录原理以及代码示例

小立仔 1329

Windows 11下JDK 21与JMeter 5.6.3环境配置全攻略

环境变量是操作系统管理软件路径与执行权限的核心机制,它通过预设的键值对,指引系统在调用命令时定位可执行文件。理解其工作原理,是解决软件安装后“命令未找到”等问题的关键。对于Java生态而言,正确配置JAVA_HOME和Path变量,不仅能让java、javac等基础命令全局可用,更是Maven、Gradle乃至JMeter等众多工具链顺畅运行的基石。JMeter作为一款基于Java开发的经典性能测试与接口测试工具,其稳定运行高度依赖健全的Java环境。本文聚焦于在Windows 11系统上,为JDK 21与

weixin_30940783的博客 449

4.无限共轭距柯克物镜设计——zemax学习笔记

无限共轭cooker物镜

fly_daerm的博客 1593

linux中c语言创建目录,Linux下C语言中mkdir和rmdir函数

mkdir函数用于创建目录。格式如下:#include#include#includeint mkdir(const char *pathname,mode_t mode);其中参数pathname是新创建目录的目录名,mode指定该目录的访问权限,这些位将受到文件创建方式屏蔽(umask)的修正。该函数创建一个名为pathname的空目录,此目录自动含有“.”和“..”2个登记项。这个新创建目录...

weixin_36233098的博客 972

Delphi 12.3 精简绿色版下载

Delphi精简绿色版基于原版安装,去掉了InterBase、法语、德语、日语,只保留了Delphi Windows 32和Delphi Windows 64桌面开发,其余部分未做任何修改。Delphi精简绿色版不含任何破解,仅供学习和研究,24小时后请自行删除,如需继续使用Delphi,请购买正版。绿色版基于原版安装,未做任何精简和修改。绿色版不含任何破解,仅供学习和研究,24小时后请自行删除,如需继续使用RAD Studio,请购买正版。

全粘工程师 4293

Linux下C语言中mkdir和rmdir函数

mkdir函数用于创建目录。格式如下:       #include       #include       #include       int mkdir(const char *pathname,mode_t mode);     其中参数pathname是新创建目录的目录名,mode指定该目录的访问权限,这些位将受到文件创建方式屏蔽(um

McArthurUp2U的专栏 1622

vue3 - 高德地图定位出错Get ipLocation failed.Geolocation permission denied.(info: “FAILED“ | status: 0)报错解决!

vue3,nuxt3,高德地图,定位,位置,报错,AMap.Geolocation,解决报当前定位失败,高德地图H5 定位失败报错,web网页网站,报错详细解决教程,Get ipLocation failed.Geolocation permission denied.,高德地图定位报错info: "FAILED",高德地图status: 0,已经是https了还是报错,确保了浏览器位置已经开了,手机定位也开了,没解决,H5页面在ios的浏览器上使用 高德地图 报当前定位失败Geolocation,移动端设

✅ 精选推荐文章 6771

SecOC专题之新鲜值TripCnt

本系列为一步步拆解新鲜值的分发及管理而撰写文章属于原创,根据自身开发经验及理解撰写,若有错误请指出Trip Counter是新鲜值中变化最慢的一个part,并且自增到最大值时,会从头开始翻转计数。Trip Counter需要收发双方都保存,由于其变化较慢,所以不会经常进行同步该值。这就要求开发过程中保证每次对该值的读写必须要正确。

qq_22969363的博客 1154

Linux系统编程之创建文件夹与删除文件夹的mkdir与rmdir函数

在linux系统编程中,可通过mkdir函数编程实现文件夹的创建,通过rmdir函数删除文件,函数代码如下,比较简单: mkdir函数创建文件: #include &lt;sys/stat.h&gt; #include &lt;sys/types.h&gt; #include &lt;stdio.h&gt; int main(int argc, char *argv[]) {     int...

kingyal 949

深入剖析RK3588系统休眠唤醒机制及驱动适配秘籍

本文深入探讨了RK3588嵌入式系统的休眠唤醒机制及驱动适配技术。首先分析了系统支持的两种休眠模式(Freeze浅度睡眠和Mem深度睡眠)及四种唤醒方式(GPIO中断、蓝牙事件、外设活动和定时器唤醒)的工作原理。重点介绍了驱动适配的三个关键环节:设备树配置要点、驱动代码实现与优化方法,以及驱动与内核电源管理的协同机制。通过GPIO按键唤醒和蓝牙唤醒两个实际案例,展示了具体实现过程并提供了常见问题的解决方案。文章为开发者提供了全面的技术参考,有助于优化系统功耗管理和响应性能,对嵌入式系统开发具有重要指导意义。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 432

C语言-目录操作1

目录 C语言-目录操作 获取当前目录 切换目录 目录的创建与删除 获取文件的目录列表 C语言-目录操作 目录操作在嵌入式产品和应用式软件编程必不可少。 获取当前目录 Linux下直接输入pwd来获取当前工作目录,这个命令由系统通过shell程序解释执行。 模拟实现pwd,获取当前工作目录: 函数声明: char *getcwd(char *buf, size_t size); 实现思路及原理: getcwd函数把当前目录的名字写到给定的缓冲区buf里. 如果目..

USA_AM_1966的博客 787

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

C语言中关于对目录的操作

原文地址:C语言中关于对目录的操作 目录的操作不论是在嵌入式产品还是应用软件编程都是必不可少的,不同的开发语言可能略有不同,笔者主要是讨论在Linux平台下对目录的一系列操作: 1、获取当前目录操作: 在系统命令行下我们可以直接输入命令:pwd 来获取当前的工作目录,但是你知道这个命令是怎么执行的吗?它是由系统通过 Shell 程序来解释执行的,在我...

aoshuang2145的博客 361

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

管理文件和目录

文章目录一、文件元数据以及基础知识1.Ubuntu2.开发板二、stat 函数组 获取文件信息1.定义2.示例代码3.测试结果三、chmod权限函数1.定义2.示例代码3.测试结果四、getcwd函数获取目录1.定义2.示例代码3.测试结果五、mkdir函数创建目录1.定义2.示例代码3.测试结果六、rmdir函数删除目录1.定义2.示例代码3.测试结果七、chdir函数改变当前目录1.定义2.示例代码3.测试结果八、opendir和closedir读取目录内容1.定义2.示例代码3.测试结果九、readd

lengyuefeng212的博客 295

.目录操作:

函数原型: int rename(const char* oldpath,const char* newpath);函数原型: int mkdir(const char* directory,mode_t mode);函数原型: DIR* opendir(const char* dirpath);函数原型: int remove(const char* directory);函数原型: struct dirent* readdir(DIR* dir);

2301_78890476的博客 595

一、Linux C编程笔记——文件属性和目录

本文介绍了Linux系统中文件操作相关的系统调用和库函数。主要内容包括:1)Linux七种文件类型标识符;2)文件属性查询函数stat/fstat/lstat的区别;3)目录操作函数mkdir/rmdir/opendir/readdir等;4)文件管理函数chown/unlink/remove/rename等;5)工作目录相关函数getcwd/chdir。重点解析了各函数的参数、返回值及使用场景,特别是stat系列函数对符号链接文件处理的差异,以及目录操作时的注意事项。这些系统调用为Linux文件管理提供了

Rtcc8023的博客 179

Linux基本命令

Linux基本命令 Linux 基本命令: Linux终端 类似于windows下面的 cmd 控制台 1.whoami 我是谁 2.pwd 我在哪 print working directory 3.ls list 列出当前目录下的文件 ls -a 查看隐藏文件 ls -l 详细显示文件信息 ls -lk ls -lh h 4k ls -t 按照时间排序显示 ls -r 逆序显示 ls -rt 按时间倒序显示 ls -s drxwxr - xr - x 3 root root 4096

m0_53536818的博客 240

shell程序说明书(接上一篇:模拟实现一个简单的shell程序,实现一些简单的命令)

一.使用方法 1、显示当前所在目录的路径名(指令pwd) 2、列出指定目录名中的所有目录及文件(指令list) 3、改变当前工作目录(指令chadir) 4、新建目录(指令makedir),创建a1文件如下 5、删除目录(指令deldir),删除a1如下 6、退出命令解释程序(指令exit),如下退出后执行ls系统命令 7、重命名一个文件或目录(指令rename),如下把txt重命名为...

qq_41631679的博客 1289

Linux系统编程——目录操作

mode 权限 --- mode & ~umask。其中st_mode为32位的权限信息,与下面的参数做&运算可以得到对应权限数据。失败 返回NULL,到达目录结尾也返回NULL。成功 返回包含路径空间的字符串的首地址。@buf 保存工作路径空间的首地址。@pathname 目录文件的名字。@size 保存路径空间的长度。@path 改变到的路径。@path 文件的路径。

2303_80942634的博客 393
上一篇: linux下access函数的应用
下一篇: linux系统调用之文件:递归删除非空目录
锜锜
博客等级 码龄18年 6粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值