打开文件 open(文件路径,标志),主标志: O_RDONLY、 O_RDWR、 O_WRONLY
副标志:O_ARREND 、O_TRUNC、O_CREAT、O_EXCL
创建文件 open(文件路径,标志,权限标志),权限标志:S_IRUSR S_IXGRP S_IWUSR S_IROTH S_IXUSR S_IRGRP S_IWGRP S_IWOTH S_IXOTH
文件权限可以使用加权数字(umask)表示
新建文件也可以使用creat(路径,umask)
文件状态和属性操作:
fstat(文件标识符,struct stat *buf) 返回一个已打开文件的状态和属性
lstat(路径,struct stat *buf) 可对未打开文件时行操作
stat(路径,struct stat *buf)
新建目录 mkdir(路径,umask)
获得当前工作目录getcwd(char *buf,size_t size)
改变执行程序的工作目录chdir(路径)
另一个常用目录操作是扫描子目录,相关函数在dirent.h里,使用一个DIR的结构,此结构指针所指向的内存空间称为子目录流。
子目录流操作相关函数
DIR *opendir(const char *name)
struct dirent *readdir(DIR *dirp)
long int telldir(DIR *dirp)
void seekdir(DIR *dirp,long int loc)
int closedir(DIR *dirp)
删除目录 rmdir(路径) 但是必须在该目录下没有子目录或文件
删除文件unlink(路径)
创建临时文件mkstemp(文件名XXXXXX) 该函数以可读写模式和600权限打开文件,如果没有则创建,文件名必须是用字符串“XXXXXX”结尾
错误处理perror("文件操作")