磁盘与文件
数据存储在文件之中,而文件就保存在硬盘的某个部分之中,用户可以把磁盘分成更小的单元和子单元,分别命名,然后把相关的信息保存在同一个单元或子单元中。文件是操作系统对io设备的一个抽象,进程/线程是对执行过程的抽象。
文件
在UNX系统中,文件是字节序列。UNIX不支持另外一些操作系统支持的其他结构(例如记录或者域)。UNIX 有3类文件。
普通文件: 规则文件包含字节序列,可以是程序代码、文本等。用vi编辑器创建的文件是普通文件,大多数用户管理使用的都是这类文件。
目录文件: 在很多方面,目录文件和其他文件一样,目录以树的形式组织文件,其本身是一个文件。
特殊文件: 特殊文件(设备文件)包含对应于外围设备(如打印机、磁盘等)的特殊信息。UNIX把I/O设备看作文件。
目录结构
目录是UNIX文件系统的基本特征,目录系统提供了磁盘组织文件的结构。UNIX中,目录结构是分层组织,允许用户方便地组织和查找文件,最高层目录为根目录,所有其他目录是它的直接或间接分支,目录不包含所含文件的信息,而是提供一个索引路径,允许用户组织和查找文件。

/bin 普通用户执行的命令存放的地方
/sbin 管理员执行的命令存放的地方
/usr应用程序存放的目录
/usr/bin 存放应用程序
/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件
/usr/local 存放软件升级包
/lib 系统使用的函数库的目录
/root 管理员的家目录(宿主目录)
/home 普通用户的家目录
/var 放置系统执行过程中经常变化的文件,如随时更改的日志文件
/etc 存放各种配置文件
/srv 服务启动之后要访问的目录
/mnt 光盘默认挂载点
/dev 存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备
/opt 给主机额外安装软件所存放的目录
/tmp 一般用户或正在执行的程序临时存放文件的目录
理解路径和路径名
每个路径的最后是一个普通文件或目录文件,普通文件在路径的末尾,不能再有更下级的目录。
几个重要的目录概念:
~HOME目录
.当前目录
..父目录
每个文件有一个路径名,路径名在文件系统中定位文件,
- 1.路径名开始的斜杠(/)代表根目录。
- 2.其他斜杠用来分割目录和文件名。
- 3.工作目录的文件可以立即访问,访问其他目录的文件需要用路径名指定该文件。
使用文件和目录名
Unix中,不要在文件名中使用以下字符
- 避免使用:<>,(),[],{},*,?,“,‘,-,$,^
因为:这些符号是正则表达式使用,同时,注意文件名是大小写敏感的。
目录命令
- pwd打印当前工作目录
- cd改变当前工作目录
- cd
- cd 路径
- mkdir创建目录
- mkdir 路径
- mkdir -p 路径
- rmdir删除目录
- 非空目录无法删除
下面是一个比较重要的命令:
ls命令用来显示指定目录的内容。
选项 | 功能 |
---|---|
-a | 列出所有文件,包括隐藏文件 |
-C | 用多列方式列出文件,按列排列 |
-F | 将子目录与普通文件类型分开,子目录加/,可执行文件加* |
-l | 详细列出文件的属性,每行一个文件 |
-m | 按页宽列出文件,用逗号隔开 |
-p | 如果是目录,文件名后加/ |
-r | 以字母反序列表 |
-R | 循环列出子目录内容 |
-s | 以文件块为单位显示文件大小 |
-X | 以多列的格式列表,按行排序 |
一行命令中可以多于一个选项,加目录的路径名列出其他目录的文件
下面利用ls -al
来继续学习文件类型

开始的字母,表示的是
- 文件类型
- - 表示普通文件
- d 表示目录
- c 表示字符设备
- b 表示块设备
- l 表示符号连接
随后的9个字符由三组r、w、x和连字符-组成,描述了文件的访问模式,表明了系统中的每个用户的指定文件的访问模式
- r 表示读权限
- w 表示写权限
- x 表示执行权限,目录的话是访问权限
第一组字符rwx字符表示的是所有者的读写执行权限,第二组rwx表示的是用户组的读写执行权限,第三组rwx是指其他用户的读写执行权限,通过对不同用户组设置不同的访问字符,就可以控制谁访问该文件以及具有何种类型的访问权。
链接数: 第2列显示链接数。
文件所有者: 第3列显示文件的拥有者,该名字通常是创建文件的用户ID。
文件组: 第4列显示用户组。每一个UNIX用户有用户ID和组ID,这些是由系统管理员指定的。例如,同一个项目的人设成相同的组ID。
文件大小: 第5列显示文件大小,这是文件的字节数。
日期和时间: 第6列显示最后更改的日期和时间。
文件名: 第7列显示文件名。
隐藏文件
以.点开头的文件或目录是缺省不被显示,目录列表命令通常不显示它们。启动文件通常不可见,以避免搞乱目录。
如果想创建自己的不可见文件,只需要文件名以.开始即可,除根目录外,每个目录都有两个特殊的不可见文件项——单点和双点:
.表示当前目录
..表示父目录
显示文件内容
cat
查看文件内容,cat无分屏浏览功能,但只适合于文件内容在一屏内的文件,如果cat命令后跟了两个文件名,那么将按照顺序依次输出两个文件的内容,如果输出内容过多,可以使用[Ctrl-s]
来停止输出,[Ctrl-q]
来恢复。
打印文件内容
lp
命令来使用打印机来打印
选项 | 功能 |
---|---|
-d | 指定的打印机上打印 |
-m | 完成打印请求后向用户邮箱发邮件提醒 |
-n | 打印指定份数 |
-s | 取消反馈消息 |
-t | 输出的标题页打印指定标题 |
-w | 完成打印请求后,在用户终端显示消息 |
如果不想打印了,可以使用cancel
命令来取消打印请求
lpstat
命令获取打印机状态
删除文件
- rm删除文件
- rm –fr递归删除文件及目录
- rm –i确认删除
在删除目录的时候,需要使用-r来递归删除。如果要删除其他路径的文件或目录,需要指定路径名。
创建文件
touch创建一个空文件
mkdir创建一个空目录