Linux C 创建多级目录
来源:互联网 发布:linux iscsi target 编辑:程序博客网 时间:2024/06/07 19:40
在JAVA中创建文件有两个方法:
mkdirs:可以创建指定目录及自动创建父级目录。
mkdir:可以创建指定目录,父级目录必须存在。
而在C中只有一个mkdir函数,效果与java的mkdir方法是相同的,感觉并不完美,所以决定写一个能够自动创建不存在的父级目录的函数。
测试程序如下:在linux下运行是没有问题的,
#include <stdio.h>#include <string.h>#include <unistd.h>/********************************************************************* 函数名: folder_mkdirs** 函数描述: 可多级建立文件夹** 参数: folder_path:目标文件夹路径** 返回: 1 - 目标文件夹存在,2 - 创建失败********************************************************************/int folder_mkdirs(char *folder_path){ if(!access(folder_path, F_OK)){ /* 判断目标文件夹是否存在 */ return 1; } char path[256]; /* 目标文件夹路径 */ char *path_buf; /* 目标文件夹路径指针 */ char temp_path[256]; /* 存放临时文件夹路径 */ char *temp; /* 单级文件夹名称 */ int temp_len; /* 单级文件夹名称长度 */ memset(path, 0, sizeof(path)); memset(temp_path, 0, sizeof(temp_path)); strcat(path, folder_path); path_buf = path; while((temp = strsep(&path_buf, "/")) != NULL){ /* 拆分路径 */ temp_len = strlen(temp); if(0 == temp_len){ continue; } strcat(temp_path, "/"); strcat(temp_path, temp); printf("temp_path = %s\n", temp_path); if(-1 == access(temp_path, F_OK)){ /* 不存在则创建 */ if(-1 == mkdir(temp_path, 0777)){ return 2; } } } return 1;}int main(void){ char *p = "/tmp/aaa/bbb/ccc/"; folder_mkdirs(p); return 0;}
说一下文件夹的权限问题:
读:可以读取该文件夹中的内容,否则cd进到文件夹中ls命令会提示权限不够
写:可以创建删除该文件夹中的文件、文件夹,否则不能创建删除(但是可以修改已有的文件的内容)执行:有该权限才能进入到该文件夹中。
另外跟风一下最近的支付宝红包。。
支付宝扫二维码可以领支付红包哦~
阅读全文
0 0
- Linux C 创建多级目录
- Linux C 创建多级目录
- linux下C语言创建多级目录
- linux c 创建多级目录接口实现
- linux创建多级目录
- c语言创建多级目录
- Linux c创建多级目录代码——20120412
- C/C++创建多级目录函数,支持windows和linux
- C/C++创建多级目录函数,支持windows和linux
- linux下面创建多级目录
- Linux一次创建多级目录
- Linux下清空多级目录(C++)
- 用C语言创建多级目录
- C语言 mkdir 创建多级目录
- C++Windows下创建多级目录
- linux 创建多级目录 mkdir -p
- linux c 创建多级目录函数实现 支持绝对路径和相对路径
- 创建多级目录
- Swoole到底是个什么东西?
- 开发环境说明
- Android O新特性之统一的布局外边距和内边距
- C:\inetpub\logs\LogFiles\W3SVC1
- 设计思想
- Linux C 创建多级目录
- Python导出csv中文乱码
- 欢迎使用CSDN-markdown编辑器
- python 列表和列表解析以及排序
- matplotlib解决中文乱码问题
- spark RDD
- Freemarker 页面静态化
- c语言中1<<n是什么意思
- 20171214进度审批后台动作