Linux目录操作的常用系统函数说明

1. chdir修改当前进程的工作目录 (man 2 chdir 查看)

int chdir(const char *path); //path路径

int fchdir(int fd); //fd文件描述符

返回值:成功返回0;失败返回-1 。

2. getcwd获取当前进程的工作目录

char *getcwd(char *buf, size_t size); //buf传出参数,size是buf的长度,

char *getwd(char *buf);

char *get_current_dir_name(void);

返回值:成功返回路径,失败返回NULL 。

3. mkdir创建一个目录

int mkdir(const char *pathname, mode_t mode); //pathname目录名称,mode权限

返回值:成功返回0;失败返回-1 。

附:创建的命令需要带有可执行权限,否则无法进入该目录,这样创建出来的目录就没有任何意义。

4. rmdir删除一个空目录

int rmdir(const char *pathname); //pathname目录名称

返回值:成功返回0;失败返回-1 。

5. opendir打开一个目录 (man 3 opendir 查看)

DIR *opendir(const char *name); //目录名称

DIR *fdopendir(int fd); //文件描述符

返回值:成功返回目录指针(类似于FILE结构),失败返回NULL 。

6. readdir读取目录 (man 3 readdir 查看)

struct dirent *readdir(DIR *dirp); //dirp是一个DIR结构体指针,一般由opendir的返回值得到

返回值:成功返回struct dirent的结构体指针,失败返回NULL 。

int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result); //entry传出参数,下一个目录记录;result传出参数,当前读取结果

返回值:成功返回0,*result等于NULL表示读取完;失败返回其他的有关错误码

附:下面对struct dirent结构体的说明:

struct dirent {

ino_t d_ino; /* inode number inode号*/

off_t d_off; /* offset to the next dirent 目录开头到进入点的偏移量*/

unsigned short d_reclen; /* length of this record d_name的长度,不包括NULL字符*/

unsigned char d_type; /* type of file; not supported by all file system types 文件类型*/

char d_name[256]; /* filename 文件名称*/

};

7. closedir关闭目录

int closedir(DIR *dirp); //关闭目录,dirp由opendir的返回值得到

返回值:成功返回0;失败返回-1 。

8. seekdir,telldir,scandir等等,更多具体的函数和使用方法请查看man手册。

时间: 2024-10-10 10:18:58

Linux目录操作的常用系统函数说明的相关文章

Linux文件操作的常用系统函数说明

1. open打开文件 (man 2 open 查看) int open(const char *pathname, int flags); //pathname文件名(路径):flags打开模式,有O_RDONLY, O_WRONLY, O_RDWR int open(const char *pathname, int flags, mode_t mode); //该函数一般用于创建新文件,flags添加O_CREAT,比如:O_RDWR|O_CREAT int creat(const cha

Oracle 常用系统函数

2  字符函数 1.    replace( 字符串1,字符串2,字符串3) replace( char, search_string, replace_string) 功能:在"字符串1"中搜索"字符串2",并将其替换为"字符串3". 例如下面的命令是将所有员工名字中出现的"A"替换为"中国". SQL>selectreplace(ename, 'A', '中国') from scott.emp;

linux目录操作

cd:改变当前的工作目录. pwd:显示当前的工作目录名,比如位于文件系统中的哪里. basename:显示文件路径中末端部分. dirname:显示文件路径中末端之外部分. mkdir:创建目录. rmdir:删除空目录. rm-r:删除非空目录及其内容. cd命令 cd [directory] cd(change directory)命令用于设置当前工作目录 : $ cd /usr/games 没有指定目录时,cd默认切换到你的个人目录: $ cd pwd命令 pwd命令用于显示当前工作目录

【Linux程序设计】之环境系统函数综合实验

这个系列的博客贴的都是我大二的时候学习Linux系统高级编程时的一些实验程序,都挺简单的.贴出来纯粹是聊胜于无. 实验题目:Linux环境下系统函数综合实验 实验目的:熟悉并掌握Linux环境下数学函数.字符函数.系统时间与日期函数.环境控制函数.内存分配函数以及数据结构中常用函数的使用方法. 一.Linux环境下数学函数的使用 设计程序,满足如下要求: 1.使用rand函数产生10个介于1到10之间的随机数值.要求在程序中对每行代码添加注释. 1 #include<stdio.h> 2 #i

转:Linux 目录结构和常用命令

转自:http://www.cnblogs.com/JCSU/articles/2770249.html仅为学习参考之用 一.Linux目录结构 你想知道为什么某些程序位于/bin下,或者/sbin,或者/usr/bin,或/usr/sbin目录下吗?例如,less命令位于/usr/bin目录下.为什么没在/bin中,或/sbin,或/usr/sbin目录中?所有这些目录之间有什么不同? 在这篇文章中,让我们回顾一下Linux的文件系统结构,并理解各上层目录的含义. 蓝色:表示目录 青色:表示链

linux文件、目录操作、常用命令

常用linux命令:man 用户手册查询(有问题就找man) cd - 回到上一次所在的目录useradd username创建普通用户pwd 查看当前路径ls 列出目录ldd /bin/ls 查看命令依赖哪些库 tree 树形形式显示目录结构tree -L 2 只列出到二级目录 which ls 查看文件路径 alias 查看所有别名alias ll='ls -al' 设置别名unalias ll 取消别名 mkdir 创建目录rmdir 删除目录mkdir -pv /a/b/c/d 创建级联

Linux目录结构和常用命令

你想知道为什么某些程序位于/bin下,或者/sbin,或者/usr/bin,或/usr/sbin目录下吗?例如,less命令位于/usr/bin目录下.为什么没在/bin中,或/sbin,或/usr/sbin目录中?所有这些目录之间有什么不同? 在这篇文章中,让我们回顾一下Linux的文件系统结构,并理解各上层目录的含义. 蓝色:表示目录 青色:表示链接 黑色:表示文件 1./- 根每一个文件和目录从根目录开始.只有root用户具有该目录下的写权限.请注意,/root是root用户的主目录,这与

Linux目录操作相关函数

一.整体大纲 二.相关函数 1. getcwd 函数作用:获取当前目录 头文件 #include <unistd.h> 函数原型 char *getcwd(char *buf, size_t size); 参数说明: buf传出参数,路径          size缓冲区大小 返回值 成功:返回路径的指针          失败:返回NULL 2. chdir 函数作用:改变工作路径 头文件 #include <unistd.h> 函数原型 int chdir(const char

Delphi常用系统函数总结

字符串处理函数 Unit System 函数原型 function Concat(s1 [, s2,..., sn]: string): string; 说明 与 S := S1 + S2 + S3 ...; 相同. 将字符串相加. 函数原型 function Copy(S: string; Index, Count: Integer): string;说明 S : 字符串. Indexd : 从第几位开始拷贝. Count : 总共要拷贝几位. 从母字符串拷贝至另一个字符串. 函数原型 pro