linux之文件操作
1. 文件操作思维导图

2. linux系统目录结构及简单说明
linux目录图:

- ftp --- 用户所有服务
- httpd
- samba
- user1
- user2
- bin --- 系统启动时需要的执行文件(二进制)
- sbin --- 可执行程序的目录,但大多存放涉及系统管理的命令。只有root权限才能执行
- proc --- 虚拟,存在linux内核镜像;保存所有内核参数以及系统配置信息
- 1 --- 进程编号
- usr --- 用户目录,存放用户级的文件
- bin --- 几乎所有用户所用命令,另外存在与/bin,/usr/local/bin
- sbin --- 系统管理员命令,与用户相关,例如,大部分服务器程序
- include --- 存放C/C++头文件的目录
- lib --- 固定的程序数据
- local --- 本地安装软件保存位置
- man --- 手工生成的目录
- info --- 信息文档
- doc --- 不同包文档信息
- tmp
- X11R6 --- 该目录用于保存运行X-Window所需的所有文件。该目录中还包含用于运行GUI要的配置文件和二进制文件。
- X386 --- 功能同X11R6,X11 发行版5 的系统文件
- boot --- 引导加载器所需文件,系统所需图片保存于此
- lib --- 根文件系统目录下程序和核心模块的公共库
- modules --- 可加载模块,系统崩溃后重启所需模块
- dev --- 设备文件目录
- etc --- 配置文件
- skel --- home目录建立,该目录初始化
- sysconfig --- 网络,时间,键盘等配置目录
- var
- file
- lib --- 该目录下的文件在系统运行时,会改变
- local --- 安装在/usr/local的程序数据,变化的
- lock --- 文件使用特定外设或文件,为其上锁,其他文件暂时不能访问
- log --- 记录日志
- run --- 系统运行合法信息
- spool --- 打印机、邮件、代理服务器等假脱机目录
- tmp
- catman --- 缓存目录
- mnt --- 临时用于挂载文件系统的地方。一般情况下这个目录是空的,而在我们将要挂载分区时在这个目录下建立目录,再将我们将要访问的设备挂载在这个目录上,这样我们就可访问文件了。
- tmp --- 临时文件目录,系统启动后的临时文件存放在/var/tmp
- lost+found --- 在文件系统修复时恢复的文件
3. 其它补充说明
1. open函数oflags参数列表
(1) O_RDONLY
(2) O_WRONLY
(3) O_RDWR
(4) O_APPEND // 追加
(5) O_TRUNC // 把文件长度设为0,丢弃已有的内容
(6) O_CREAT
(7) O_EXCL // 与O_CREAT一起使用,确保调用者创建文件
// 主要防止两个程序同时创建同一个文件,如果文件已存在,调用失败
2. open函数的mode参数
// 当使用O_CREATE标志的open调用来创建文件时,必须使用有3个参数格式的open调用
S_IRUSE S_IWUSE S_IXUSE
S_IRGRP S_IWGRP S_IXGRP
S_IROTH S_IWOTH S_IXOTH
open("myfile", O_CREAT, S_IRUSE|S_IWUSE)
3.TIMEFORMAT
linux使用TIMEFORMAT变量来重置默认的POSIX时间输出格式,POSIX时间格式不包括CPU使用率。使用time工具对这个程序的运行时间进行测算
4. off_t lseek(int filds, off_t offset, int whence)
whence取值如下:
SEEK_SET // 绝对位置
SEEK_CUR // 相对于当前位置的相对位置
SEEK_END // 相对于文件尾的相对位置
linux之文件操作的更多相关文章
- qt ui程序使用Linux的文件操作open、close (转)
原文地址:qt ui程序使用Linux的文件操作open.close 作者:kjpioo 提出这个问题是因为在qt的QWidget类型的对象中,close()函数会和QWidget::close()冲 ...
- Unix/Linux常用文件操作
Unix/Linux常用文件操作 秘籍:man命令是Unix/Linux中最常用的命令,因为命令行命令过多,我相信每个人都会经常忘记某些命令的用法,man命令就可以显示一个命令的所有选项,参数和说明, ...
- Linux C 文件操作,系统调用 -- open()、read() 和 标准I/O库 -- fopen()、fread()
函数汇总: open().write().read().close() fopen().fwrite().fread().fclose() 一.什么是文件 在讲述文件操作之前,我们首先要知道什么是文件 ...
- Windows与Linux下文件操作监控的实现
一.需求分析: 随着渲染业务的不断进行,数据传输渐渐成为影响业务时间最大的因素.究其原因就是因为数据传输耗费较长的时间.于是,依托于渲染业务的网盘开发逐渐成为迫切需要解决的需求.该网盘的实现和当前市场 ...
- linux文件管理 文件操作
文件操作 pwd 命令 该命令的英文解释为print working direction(打印工作目录).输入pwd命令,Linux输出当前目录. cd 命令 用来改变所在目录 cd / 转到根目录 ...
- Linux C 文件操作函数(~上善止水~)
翻翻笔记,整理一下 C 语言中的文件操作函数 ~~~~~~,多注意细节,maybe 细节决定成败~ 1. fopen /* fopen(打开文件) * * 相关函数 open,fclose * * 表 ...
- 【Linux】文件操作系统调用
一. 文件描述符 在Linux下使用文件描述符来表示设备文件和普通文件.文件描述符是一个整型的数据,所有对文件的操作都通过文件描述符实现.文件描述符的范围是0~OPEN_MAX,系统中有3个已经分配的 ...
- Linux&c 文件操作,线程进程控制,网络编程,简单知识点梳理
一:文件操作 在linux下,一切皆文件,目录是文件,称为目录文件,内容是该目录的目录项(但是目录只有内核可以编辑,超级用户也不可以编辑),设备也是设备文件,在/dev存放的就是一些设备文件,linu ...
- Linux&c 文件操作,线程进程控制,网络编程,简单知识点梳理
一:文件操作 在linux下,一切皆文件,目录是文件,称为目录文件,内容是该目录的目录项(但是目录只有内核可以编辑,超级用户也不可以编辑),设备也是设备文件,在/dev存放的就是一些设备文件,linu ...
- linux下文件操作之cp和mv
Linux CP文件夹略过目录的解决 root@QGY:/home/qgy# cp image/newimage_raw /mnt/4T/qin/cp: 略过目录'image/newimage_raw ...
随机推荐
- 什么是JIT?
JIT是just in time,即时编译技术.使用该技术,能够加速java程序的执行速度.下面,就对该技术做个简单的讲解. 首先,我们大家都知道,通常javac将程序源代码编译,转换成java字节码 ...
- Python3:input()输入函数的用法
Python3:input()输入函数的用法 一.简介 input这个函数,第一个参数是提示语,它默认是空的.在我们使用input的时候,会从标准输入中读取一个string,即字符串(请注意,这里很重 ...
- 项目中使用better-scroll实现移动端滚动,报错:Cannot read property 'children' of undefined better-scroll
就是外面的盒子和要滚动的元素之间要有一层div, 插件挂载的元素是menuWrapper,可以滚动的元素是ul,在这两个元素之间加一个div元素即可解决问题.
- xshell 常用命令
一.grep 命令 (1)命令格式 grep [选项] pattern [file] (2)常用参数 参数 描述 -c 计算找到 '搜寻字符串'(即 pattern) 的次数 -i 忽略大小写的不同, ...
- Jave基础之选择排序
选择排序(Selection sort) 基本介绍 选择排序: 每一次从未排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余未排序的元素中选出最小(或最大的)放在已排序序 ...
- LAMP脚本
A goal is a dream with a deadline. Much effort, much prosperity. 环境:CentOS release 6.5 2.6.32-431.e ...
- hydra简单使用示例
本内容为网上收集整理,仅作为备忘!! hydra简单使用示例: 破解https: # hydra -m /index.php -l muts -P pass.txt 10.36.16.18 https ...
- 【转】和菜鸟一起学linux之DBUS基础学习记录
[原文] D-Bus三层架构 D-Bus是一个为应用程序间通信的消息总线系统, 用于进程之间的通信.它是个3层架构的IPC 系统,包括: 1.函数库libdbus ,用于两个应用程序互相联系和交互消息 ...
- SSH学习(2)
SVN概述 1 SVN体系结构 (1)svn服务器 -首先在svn服务器里面创建 仓库 (2)svn客户端 SVN服务器安装和使用 0 首先把项目add到svn服务器上 清除不小点击保存密码的设置 修 ...
- es6 中的let,const
在es6中,let的作用和var差不多,都是用来声明变量的,但是他们之间的区别在于作用域不同,大家都知道在js中没有块级作用域,例如: for(var i=0;i<10;i++){ consol ...