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 ...
随机推荐
- Oracle数据安全(三)权限管理
一.权限概述 所谓权限就是执行特定类型SQL命令或访问其他模式对象的权利.用户在数据库中可以执行什么样的操作,以及可以对哪些对象进行操作,完全取决于该用户所拥有的权限. 在Oracle中将权限分为系统 ...
- bug最后汇总-2018/08/03
一.对于点击后请求时间过长的按钮 现象:容易给用户点击无效的错觉,从而导致多次点击,从而发出多个相同请求,这显然是不符合我们意愿的 解决: 用户点击发出多个请求:加个锁,当用户点击后,将锁关闭,使用户 ...
- Lightroom’s Clarity Slider – What Does It Do?
http://digital-photography-school.com/lightrooms-clarity-slider-what-does-it-do/ With the introducti ...
- 【Flask】Flask上下文
# 上下文: ### Local对象:在`Flask`中,类似于`request`的对象,其实是绑定到了一个`werkzeug.local.Local`对象上.这样,即使是同一个对象,那么在多个线程中 ...
- cocoa应用程序中NSStatusItem的使用
mac上的应用程序除了左上方会有菜单之外,在屏幕的右上方也会有一个图标样的菜单,这个类似于windows上右下角的system tray. 本文讲述如何给自己的应用程序添加一个system tray( ...
- 线程的sleep()方法和yield()方法区别
1.sleep()方法给其他线程运行机会时不考虑线程的优先级,因此会给低优先级的线程以运行的机会 2.yield()方法只会给相同优先级或更高优先级的线程以运行的机会 3.线程执行sleep()方法后 ...
- HIVE 编写自定义函数UDF
一 新建JAVA项目 并添加 hive-exec-2.1.0.jar 和hadoop-common-2.7.3.jar hive-exec-2.1.0.jar 在HIVE安装目录的lib目录下 had ...
- 未来简史之数据主义(Dataism)
https://www.jianshu.com/p/8147239c9cb0?from=singlemessage junjguo 关注 2017.04.24 22:08* 字数 8116 阅读 31 ...
- netty同时支持socket和http
项目需要使用netty做中转服务器,同时支持两种不同协议的客户端,经过几天查询资料终于找到合适的方案了,同时感谢Netty权威指南及论坛问答,开始贴代码 客户端1==>socket public ...
- spring3: 4.4 使用路径通配符加载Resource
4.4.1 使用路径通配符加载Resource 前面介绍的资源路径都是非常简单的一个路径匹配一个资源,Spring还提供了一种更强大的Ant模式通配符匹配,从能一个路径匹配一批资源. Ant路径通配 ...