【Linux 基础 IO】文件系统

文章目录

1.初步理解文件

🐧① 打开文件 : 本质是进程打开文件,只有程序运行起来文件才被打开;

🐧②文件没有被打开的时候在哪里呢? ----- 在磁盘中;

🐧③进程可以打开很多个文件吗? ---- 可以的🙆‍;

🐧④系统中可不可以存在很多个进程呢? ---- 可以存在;

🐧⑤由第3、4点可以得知,在OS内部一定存在大量的被打开的文件(如何管理呢? 先描述,在组织


2.C语言环境下的文件操作

2.1 C库中 fopen、fwrite 的讲解

🐧①语法:

🐧②fopen () 的打开方式:

Ⅰ.✌ 以w 的方式打开: 如果该路径下没有该文件的话,则创建该文件,如果该文件存在的话,则在打开文件的时候,把文件的内容清空;

Ⅱ.✌a的方式打开: 直接在该文件的后面追加内容,不会清空文件;

  • 以下两个知识点是 Linux 中的概念:

Ⅲ.✌输出重定向> ,实际上就是充当 w的作用;

Ⅳ.✌追加重定向>> ,它实际充当的是 a的作用;


🐧② fprintf ( ) 的使用

将内容打印到 log.txt 这个文件中:


🐧③ C库函数 fwrite ( ) 的介绍


2.2 C文件操作的实例

对fopen, fread, fwrite, fseek, fclose等函数的使用;

使用代码打开当前路径下的"bite"文件(如果文件不存在在创建文件),向文件当中写入"linux so easy!".

在从文件当中读出文件当中的内容, 打印到标准输出当中; 关闭文件流指针;

3.系统调用接口的讲解

  • 为什么要有系统调用呢?
    🐧Ⅰ.我们对文件进行读写操作,文件是存储在磁盘中的,而磁盘是硬件,我们作为一个用户,操作系统绝对不允许我们对硬件直接进行访问,所以操作系统为我们提供系统调用以便我们能够访问文件。
相关推荐
不会就选b14 小时前
Linux之基本操作(上)
linux·运维·服务器
寺中人14 小时前
Linux系统超详细解析与零基础实战使用教程
linux·服务器·系统架构·linux命令·零基础教程
Android系统攻城狮14 小时前
Linux Pulseaudio深度解析之pa_stream_set_overflow_callback用流程与实战(三十七)
linux·运维·服务器·音频进阶·pulseaudio进阶
学无止境_永不停歇14 小时前
从零手写高性能C++ TCP 服务器框架(十一) --- Connection实现
linux·服务器·网络·c++
AOwhisky14 小时前
MySQL 学习笔记(第二期):SQL 语言之库表操作与数据类型
linux·运维·数据库·笔记·sql·学习·mysql
爱就是恒久忍耐14 小时前
Ubuntu解决pip3安装库提示This environment is externally managed的问题
linux·python·ubuntu
Surpass-HC15 小时前
gsoap搭建网络像机onvif服务器
linux·服务器·数据库
Ameilide15 小时前
Linux 应用软件编程 文件编程(IO)
linux·运维·服务器
枕星而眠15 小时前
Linux IO多路复用:select、poll、epoll 核心原理与进阶实战
linux·运维·服务器·c++·后端
Rain50915 小时前
GitLab-Runner + AI 代码审查服务 + 远程大模型 全套部署运维实战
linux·运维·人工智能·python·ci/cd·gitlab·ai编程