美文网首页
Linux文件系统

Linux文件系统

作者: jiangxueqiao | 来源:发表于2016-11-15 11:48 被阅读0次

概念

在Linux中几乎一切都可以看作文件。that's all.

文件描述符

所有被打开的文件都由文件描述符来引用,文件描述符是一个非负整数。类似windows的HANDLE。
系统启动时,会有3个已经打开的文件描述符:
0: 标准输入
1: 标准输出
2: 标准错误
在<unistd.h>头文件中对这3个常数定义如下:

#define STDIN_FILENO  0
#define STDOUT_FILENO 1
#define STDERR_FILENO 2

系统函数

open

功能

打开或创建文件

声明

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

int open(const char* pathname, int oflag, ...);

返回

若成功为文件描述符,出错为-1。

参数

pathname:要打开或创建的文件名
oflag: 一个或多个常数进行或运行(这些常数定义在<fcntl.h>中):

  • O_RDONLY 只读打开
  • O_WRONLY 只写打开
  • O_RDWR 读写打开
    上面3个常数只能选择一个。
  • O_APPEND 追加写
  • O_CREATE 文件不存在则创建。使用该选项时要指定第三个参数Mode,说明文件的存取许可权位
  • O_EXCL 如果同时指定O_CREATE,而文件已经存在,则出错。
  • O_TRUNC 如果此文件存在,而且为只读或只写打开,则将文件长度截断为0
  • O_NOCTTY
  • O_NONBLOCK
  • O_SYNC

create

close

read

write

lseek

库函数

相关文章

网友评论

      本文标题:Linux文件系统

      本文链接:https://www.haomeiwen.com/subject/fmgkpttx.html