2980
- 收藏
- 点赞
- 分享
- 举报
Linux文件及系统管理
1. 文件
绝大多数操作系统(从D O S到Wi n d o w s,从U N I X到L i n u x )中都有文件的概念。简单的讲文
件就是一组相关纪录的集合。L i n u x中文件是无结构的字符流,即文件中的任两个字节是完全
独立的。具体的信息要放到相应的环境中才能理解。
文件通过文件名来标识引用,即文件是通过文件名来进行管理的。系统中每一个文件都
有一个文件名。
2. 目录
文件多了就会发生混乱,因此目录就出现了。目录就是存放一组文件的“夹子”,
Wi n d o w s中的“文件夹”就是这个概念。所以目录就是一组相关文件的集合,我们通常都通
过目录来管理文件。目录和文件一样也有自己的名字。而一个目录下面除了可以放文件之外,
还可以存放目录,称为这个目录的子目录。这个子目录之下还可以有它自己的子目录,依此
类推从而形成一个树状目录结构。其中最上层的目录我们称为根目录,而系统内的所有目录
都是根目录的子目录。图4 - 1是一个树状目录结构的范例。
3. 路径
相信使用过其他操作系统的用户对这个概念不会陌生。打个比方,某个文件就好像是在
一个写字楼中的一间办公室内的一把椅子,当然还有其他很多椅子也在这个办公室里。现在
要把它找出来坐在上面办公,那么只知道这个椅子是什么样的还不行,还需要知道如何到达
哪里。文件名就是这椅子,而路径就是用来说明如何找到该椅子的。
L i n u x文件系统是由目录和目录下的文件一起构成的,是一个树型的结构。在这个系统最
顶层的是根目录“/” 。下面是各级其他目录。L i n u x路径是由从根目录到文件所经过的所有目
录加上文件名连在一起构成的,中间以“/”分隔。
同样的和D O S相同,在每个目录上面都有名为“ .”和“. .”的两个文件,前者代表的是
当前目录,后者代表的是当前目录的父目录 (上一级目录)。
如果要存取不在工作目录中的文件,则除了文件名之外,也要指定目录的位置,而这就
是路径。而路径由文件所在的目录加上文件名组成,中间再用“ /”隔开。系统中每一个文件
都有一个路径名,要想引用这个文件就要通过路径来引用。如图 4 - 1所示,假设在图中的目录
linus 下有一个文件名为:l i n u s - f i l e,那么访问它的路径为:/ h o m e / l i n u s / l i n u s - f i l e。
路径又分成以下两种:
绝对路径:路径名称以“/”开头,其中文件或目录的位置从根目录算起。
相对路径:路径名称不以“ /”开头,其中文件或目录的位置从工作目录算起,工作目录
可以理解为当前所在的目录。
标准文件系统布局(树型目录)
4. 文件目录命名规则
和D O S相比,L文件命名相当宽松。L文件名可以由字母、数字和一些标点符号组成。文
件名中不能包含有空格和下列的字符:
! @ # $ % ^ & * ( ) " \ / | ; < >
但文件及目录名字的长度可以超过 D O S的8 . 3的规定,只是通常要在256 字之内。为了兼
容U N I X文件系统,建议大家使用1 4个以下的字符作为文件名(一般的U N I X系统都只允许1 4个
以下的字符作为文件名 )。另外我们大家经常使用的 Windows 95/98系统中是可以在文件名中
使用空格的,L i n u x中实际上也有办法可以解决这个问题,那就是将文件名使用“”括起来,
这样在双引号里面就可以随意使用任何字符了。也就是说没有任何限制了。但除非是真有必
要,一般建议最好不要这么做。因为大多数程序不一定可以访问具有这种文件名的文件;而
且使得文件系统的可移植性也变差。
5. 处理文件的命令
表4-1 文件操作常用命令
命 令 作 用
ls 列出目录的内容
ls -l 列出目录的详细内容
cd 切换工作目录为< d i r >
Mkdir 建立名叫< d i r >的目录
Rmdir 删除名叫< d i r >的目录
cat 看< f i l e >的内容
More 看< f i l e >的内容,并且每印满一页后则暂停
rm 删除< f i l e >
cp 把< f i l e - A >拷贝一份成< f i l e - B >
ev 将< f i l e - A >改名为< f i l e - B >
Echo 将< s t r i n g >显示在屏幕上
L i n u x文件系统中包括以下类型的文件:
文本文件:同其他操作系统的文本文件相同,是由一些字符在计算机内的A S C I I码组成的。
通常这类文件在各个操作系统中是兼容的。
二进制文件:文件中保存的是数据的二进制表示,一般情况下用普通的文本阅览器所见
到的是一堆乱码,需要专用的软件才能查看文件内容。例如:可执行文件、图像文件、声音
文件等都是这类文件。
目录文件:L i n u x中对目录的管理也是通过文件进行的。顾名思义,目录文件就是一类
特殊的文件,其中保存的信息不是普通的数据等,而是文件名和文件有关的文件信息,例
如文件名、文件创建日期、文件类型、读取权限等。目录文件中还可以包含下一级的目
录。
连接文件:普通的连接实际上不是文件,它们仅是指向同一索引节点的目录条目,是
一个索引节点表。该表记录了一个文件有多少连接,这种连接不能跨越设备,因为不同设
备上的i节点号不同,而另一种连接类型—符号链接—则没有这种限制。这将在后面详
细介绍。
设备文件:设备文件是 L i n u x系统中较特殊的文件。 L i n u x中引入设备文件的目的是实现
设备独立性。用户访问外部设备时就是通过设备文件进行的。操作系统对外设的支持程度
直接影响到操作系统被使用的广泛程度,一个由于本身而限制了访问硬件的操作系统不能
说是一个成功的操作系统。面对越来越多,越来越高级的外设, L i n u x将外设看作一个文件
来管理,这样就避免了由于外设的增加而带来的问题。当需要增加新设备时,只要在操作
系统内核中增加相应的设备文件即可。因此,设备文件在外设与操作系统之间提供了一个
接口,用户使用外设就像使用普通文件一样。设备文件存放在 / d e v目录下,它使用设备的
主设备号和次设备号来区分指定的外设:主设备号说明设备类型,次设备号说明具体指哪
一个设备。例如: / d e v / f d 0指系统中的一个软盘驱动器,主设备号 f d是软盘驱动器 ( f l o p p y
d i s k )的缩写;次设备号 0是软盘驱动器编号,意思是指系统中的一软盘驱动器,也就是我们
通常所说的“A: ”盘。
管道文件:也是L i n u x中较特殊的文件类型,这类文件多用于进程间的通信方面。进程可
通过管道文件实现互相的信息传输,一个进程将数据写在管道的一端,另一个进程从管道的
另一端将数据读出,这样就能实现进程的相互协作。管道文件又可分为无名管道和有名管道
两种。
绝大多数操作系统(从D O S到Wi n d o w s,从U N I X到L i n u x )中都有文件的概念。简单的讲文
件就是一组相关纪录的集合。L i n u x中文件是无结构的字符流,即文件中的任两个字节是完全
独立的。具体的信息要放到相应的环境中才能理解。
文件通过文件名来标识引用,即文件是通过文件名来进行管理的。系统中每一个文件都
有一个文件名。
2. 目录
文件多了就会发生混乱,因此目录就出现了。目录就是存放一组文件的“夹子”,
Wi n d o w s中的“文件夹”就是这个概念。所以目录就是一组相关文件的集合,我们通常都通
过目录来管理文件。目录和文件一样也有自己的名字。而一个目录下面除了可以放文件之外,
还可以存放目录,称为这个目录的子目录。这个子目录之下还可以有它自己的子目录,依此
类推从而形成一个树状目录结构。其中最上层的目录我们称为根目录,而系统内的所有目录
都是根目录的子目录。图4 - 1是一个树状目录结构的范例。
3. 路径
相信使用过其他操作系统的用户对这个概念不会陌生。打个比方,某个文件就好像是在
一个写字楼中的一间办公室内的一把椅子,当然还有其他很多椅子也在这个办公室里。现在
要把它找出来坐在上面办公,那么只知道这个椅子是什么样的还不行,还需要知道如何到达
哪里。文件名就是这椅子,而路径就是用来说明如何找到该椅子的。
L i n u x文件系统是由目录和目录下的文件一起构成的,是一个树型的结构。在这个系统最
顶层的是根目录“/” 。下面是各级其他目录。L i n u x路径是由从根目录到文件所经过的所有目
录加上文件名连在一起构成的,中间以“/”分隔。
同样的和D O S相同,在每个目录上面都有名为“ .”和“. .”的两个文件,前者代表的是
当前目录,后者代表的是当前目录的父目录 (上一级目录)。
如果要存取不在工作目录中的文件,则除了文件名之外,也要指定目录的位置,而这就
是路径。而路径由文件所在的目录加上文件名组成,中间再用“ /”隔开。系统中每一个文件
都有一个路径名,要想引用这个文件就要通过路径来引用。如图 4 - 1所示,假设在图中的目录
linus 下有一个文件名为:l i n u s - f i l e,那么访问它的路径为:/ h o m e / l i n u s / l i n u s - f i l e。
路径又分成以下两种:
绝对路径:路径名称以“/”开头,其中文件或目录的位置从根目录算起。
相对路径:路径名称不以“ /”开头,其中文件或目录的位置从工作目录算起,工作目录
可以理解为当前所在的目录。
标准文件系统布局(树型目录)
4. 文件目录命名规则
和D O S相比,L文件命名相当宽松。L文件名可以由字母、数字和一些标点符号组成。文
件名中不能包含有空格和下列的字符:
! @ # $ % ^ & * ( ) " \ / | ; < >
但文件及目录名字的长度可以超过 D O S的8 . 3的规定,只是通常要在256 字之内。为了兼
容U N I X文件系统,建议大家使用1 4个以下的字符作为文件名(一般的U N I X系统都只允许1 4个
以下的字符作为文件名 )。另外我们大家经常使用的 Windows 95/98系统中是可以在文件名中
使用空格的,L i n u x中实际上也有办法可以解决这个问题,那就是将文件名使用“”括起来,
这样在双引号里面就可以随意使用任何字符了。也就是说没有任何限制了。但除非是真有必
要,一般建议最好不要这么做。因为大多数程序不一定可以访问具有这种文件名的文件;而
且使得文件系统的可移植性也变差。
5. 处理文件的命令
表4-1 文件操作常用命令
命 令 作 用
ls 列出目录的内容
ls -l 列出目录的详细内容
cd
Mkdir
Rmdir
cat
More
rm
cp
ev
Echo
L i n u x文件系统中包括以下类型的文件:
文本文件:同其他操作系统的文本文件相同,是由一些字符在计算机内的A S C I I码组成的。
通常这类文件在各个操作系统中是兼容的。
二进制文件:文件中保存的是数据的二进制表示,一般情况下用普通的文本阅览器所见
到的是一堆乱码,需要专用的软件才能查看文件内容。例如:可执行文件、图像文件、声音
文件等都是这类文件。
目录文件:L i n u x中对目录的管理也是通过文件进行的。顾名思义,目录文件就是一类
特殊的文件,其中保存的信息不是普通的数据等,而是文件名和文件有关的文件信息,例
如文件名、文件创建日期、文件类型、读取权限等。目录文件中还可以包含下一级的目
录。
连接文件:普通的连接实际上不是文件,它们仅是指向同一索引节点的目录条目,是
一个索引节点表。该表记录了一个文件有多少连接,这种连接不能跨越设备,因为不同设
备上的i节点号不同,而另一种连接类型—符号链接—则没有这种限制。这将在后面详
细介绍。
设备文件:设备文件是 L i n u x系统中较特殊的文件。 L i n u x中引入设备文件的目的是实现
设备独立性。用户访问外部设备时就是通过设备文件进行的。操作系统对外设的支持程度
直接影响到操作系统被使用的广泛程度,一个由于本身而限制了访问硬件的操作系统不能
说是一个成功的操作系统。面对越来越多,越来越高级的外设, L i n u x将外设看作一个文件
来管理,这样就避免了由于外设的增加而带来的问题。当需要增加新设备时,只要在操作
系统内核中增加相应的设备文件即可。因此,设备文件在外设与操作系统之间提供了一个
接口,用户使用外设就像使用普通文件一样。设备文件存放在 / d e v目录下,它使用设备的
主设备号和次设备号来区分指定的外设:主设备号说明设备类型,次设备号说明具体指哪
一个设备。例如: / d e v / f d 0指系统中的一个软盘驱动器,主设备号 f d是软盘驱动器 ( f l o p p y
d i s k )的缩写;次设备号 0是软盘驱动器编号,意思是指系统中的一软盘驱动器,也就是我们
通常所说的“A: ”盘。
管道文件:也是L i n u x中较特殊的文件类型,这类文件多用于进程间的通信方面。进程可
通过管道文件实现互相的信息传输,一个进程将数据写在管道的一端,另一个进程从管道的
另一端将数据读出,这样就能实现进程的相互协作。管道文件又可分为无名管道和有名管道
两种。
我来回答
回答0个
时间排序
认可量排序
暂无数据
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币
Markdown 语法
- 加粗**内容**
- 斜体*内容*
- 删除线~~内容~~
- 引用> 引用内容
- 代码`代码`
- 代码块```编程语言↵代码```
- 链接[链接标题](url)
- 无序列表- 内容
- 有序列表1. 内容
- 缩进内容
- 图片![alt](url)
相关问答
-
2018-12-17 14:35:34
-
2008-08-07 18:54:01
-
2018-12-18 10:10:14
-
2013-11-24 22:01:43
-
2012-12-05 14:14:51
-
2014-08-28 09:27:05
-
2012-12-24 14:10:01
-
2018-12-19 11:05:53
-
2008-08-23 12:37:29
-
2008-08-23 16:39:24
-
2012-12-24 14:11:21
-
02008-07-06 20:37:09
-
2008-07-18 20:46:59
-
2019-01-24 15:26:05
-
2012-12-24 14:19:21
-
2017-11-22 16:50:26
-
2012-12-24 14:20:20
-
2020-06-29 17:36:54
-
02015-10-20 14:54:37
无更多相似问答 去提问
点击登录
-- 积分
-- E币
提问
—
收益
—
被采纳
—
我要提问
切换马甲
上一页
下一页
悬赏问答
-
5Hi3516CV610 如何使用SD卡升级固件
-
5cat /dev/logmpp 报错 <3>[ vi] [func]:vi_send_frame_node [line]:99 [info]:vi pic queue is full!
-
50如何获取vpss chn的图像修改后发送至vo
-
5FPGA通过Bt1120传YUV422数据过来,vi接收不到数据——3516dv500
-
50SS928 运行PQtools 拼接 推到设备里有一半画面会异常
-
53536AV100的sample_vdec输出到CVBS显示
-
10海思板子mpp怎么在vi阶段改变视频数据尺寸
-
10HI3559AV100 多摄像头同步模式
-
9海思ss928单路摄像头vio中加入opencv处理并显示
-
10EB-RV1126-BC-191板子运行自己编码的程序
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
提醒
你的问题还没有最佳答案,是否结题,结题后将扣除20%的悬赏金
取消
确认
提醒
你的问题还没有最佳答案,是否结题,结题后将根据回答情况扣除相应悬赏金(1回答=1E币)
取消
确认