linux文件的通用操作方法学习

2014-07-29 23:36:10

  在linux下用文件描述符来表示设备文件和普通文件。文件描述符是一个整型的数据,所有对文件的操作都通过文件描述符实现。

  文件描述符示文件系统中连接用户空间和内核空间的枢纽。当打开一个或者创建一个文件时,内核空间创建相应的结构,并生成一个整型的变量传递给用户空间的对应进程。进程用这个文件描述符来对文件进行操作。

  文件描述符的范围示0~OPEN_MAX,因此是一个有限的资源,在使用完毕后要及时释放,通常示调用从close()函数关闭。注意的是文件描述符的值仅在同一个进程中有效,即不同进程文件描述符,同一个值很可能描述的不是同一个设备或普通文件。在里linux系统中有3个已经分配的文件描述符,即标准输入,标准输出和标准错误,他们文件描述符的值分别问0 1 和2。可以查看/dev/下的stdin(标准输入) stout(标准输出)和stderr(标准错误),会发现分别指向/proc/self/fd/目录下的0 1 2文件。

  1.
    打开创建文件open(),creat()函数

  查看函数功能可在终端输入 man 2 open,此手册包含了函数所含头文件,函数功能,函数参数取值

  函数原型为:int open(const char *pathname,int flags);

        int open(const char *pathname,int flags,mode_t mode);

  两者差别在于flags取值,当你man 2 open的时候你会看到flags的取值,当flags使用O_CREAT时要指定mode的值,其实就是创建文件比说明权限!

  以下是一个简单的打开文件的程序:

 1 #include <sys/types.h>
 2 #include <sys/stat.h>
 3 #include <fcntl.h>
 4 #include <stdio.h>
 5
 6 int main(void)
 7 {
 8     int fd = -1;     //文件描述符声明
 9     char filename[] = "text.txt";//打开的文件名
10     fd = open(filename,O_RDWR); //打开的方式为可读写方式
11     if(fd == -1)  //打开失败
12     {
13         printf("open file s% is  failed!,fd:%d\n",filename,fde);
14     }
15     else        //打开成功
16     {
17         printf("open file s% sucess!,fd:%d\n",filename,fd);
18     }
19     close(fd);  //关闭文件
20     return 0;
21 }

linux文件的通用操作方法学习,布布扣,bubuko.com

时间: 2024-12-24 02:14:40

linux文件的通用操作方法学习的相关文章

烂泥:linux文件同步之rsync学习(一)

本文由秀依林枫提供友情赞助,首发于烂泥行天下. 这几天刚好有空就打算开始学习linux下的文件同步软件rsync,在学习rsync时,我们可以分以下几个步骤进行: 1. rsync是什么 2. rsync的工作原理 3. rsync优点 4. rsync认证方式 5. 安装rsync 6. rsync命令参数详解 7. 配置rsync 8. rsync的启动与关闭 9. rsync同步实例 说明:rsync服务器与客户端使用的OS均为:centos 6.5 64bit. 一.rsync是什么 在

linux文件权限命令chmod学习

Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁止对其做任何的更改操作.可执行权限表示允许将该文件作为一个程序执行.文件被创建时,文件所有者自动拥有对该文件的读.写和可执行权限,以便于对文件的阅读和修改.用户也可根据需要把访问权限设置为需要的任何组合. 有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户.其他用户.所有者一般是文件的

Linux文件操作学习总结【转载】

本文转载自: http://blog.csdn.net/xiaoweibeibei/article/details/6556951 文件类型:普通文件(文本文件,二进制文件).目录文件.链接文件.设备文件.管道文件. 文件的权限:读.写.执行 文件的相关信息:目录结构.索引节点.文件数据 索引节点的stat结构 struct stat{ dev_t st_dev;//文件使用的设备号 ino_t st_inl;//索引节点号 mode_t st_mode;//文件访问权限 nlink_t st_

2019/12/10学习内容摘要(Linux文件和目录管理)

1.绝对路径和相对路径 *绝对路径:路径的写法一定是由根目录 / 写起的,例如 /usr/local/mysql *相对路径:路径的写法不是由根目录 / 写起的,例如 首先用户进入到 /home,然后再进入到test,执行的命令为 “#cd /home,#cd test”.此时用户所在的路径为 /home/test.第一个cd命令后紧跟/home,前面有斜杠:而第二个cd命令后紧跟test,前面没有斜杠.这个test是相对于/home目录来讲的,所以称为相对路径. 2.与目录相关命令 1. cd

#Linux学习笔记# Linux文件的属性以及权限说明

1. Linux文件的属性 关于Linux文件的属性的说明和设置请参考鸟叔Linux私房菜:Linux 的文件权限与目录配置 2. 目录和文件的权限意义 在Linux系统中,每个文件都有三种身份的权限配置,而每个身份都有三种权限(rwx).这三种权限对于普通的文件很好理解,如下表所示, 表格 1 普通文件的rwx权限位意义 权限 说明 r 文件内容可读 w 文件内容可修改 x 文件可执行 在Window系统中,文件是否可执行是通过文件扩展名来进行识别,例如.exe或.bat等.而在Linux系统

linux学习随笔——linux文件权限管理和网络配置

一.linux文件权限管理 查看某个文件的权限命令:ls -l linux文件权限有4种:读(r).写(w).执行(x)和无权限(-) 一般用10个字符表示其权限,按照(1-3-3-3)来分组划分 1位置 表示文件类型 "-"表示文件,"d"表示目录 2-4位 表示用户权限(u) 5-7位 表示组权限(g) 8-10  表示其他权限(o) 通常用chmod来修改权限:chmod     u+r 目标文件 也可以用数字来表示权限 r=4 w=2 x=1 chown命令

Linux命令学习(21) Linux文件类型与扩展名

Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念.我们通过一般应用程序而创建的比如file.txt.file.tar.gz ,这些文件虽然要用不同的程序来打开,但放在Linux文件类型中衡量的话,大多是常规文件(也被称为普通文件). 一. 文件类型 Linux文件类型常见的有:普通文件.目录文件.字符设备文件和块设备文件.符号链接文件等,现在我们进行一个简要的说明. 1. 普通文件 我 们用 ls -lh 来查看某个文件的属性,可以看到有类似-rwxrwxrwx,值得注意的

鸟哥的Linux私房菜_基础版_学习笔记3:第七章 Linux文件与目录管理

第七章 Linux文件与目录管理 7.1目录与路径: 7.1.1相对路径与绝对路径: 绝对路径:路径的写法『一定由根目录 / 写起』,例如: /usr/share/doc 这个目录. 相对路径:路径的写法『不是由 / 写起』,例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成:『cd ../man』这就是相对路径的写法啦!相对路径意指『相对於目前工作目录的路径!』 7.1.2目录的相关操作: . 代表此层目录 .. 代表上一层目录 - 代表前一个工作目录

Linux 文件权限总结

在 Linux 中最基本的任务之一就是设置文件权限.理解它们是如何实现的是你进入 Linux 世界的第一步.如您所料,这一基本操作在类 UNIX 操作系统中大同小异.实际上,Linux 文件权限系统就直接取自于 UNIX 文件权限(www.lampbrother.net). 但不要以为理解文件权限需要长时间的学习.事实上会很简单,让我们一起来看看你需要了解哪些内容以及如何使用它们. 基础概念 你要明白的第一件事是文件权限可以用来干什么.当你设置一个分组的权限时发生了什么?让我们将其展开来说,这个