Linux文件与目录管理 目录存放着Linux的源代码

在Linux系统下 , 一切皆文件 , 文件主要分为五类:普通文件、目录文件、设备文件、链接文件、管道文件 。

普通文件:是最基本的文件 , 保存着运行指令和各种数据 。普通文件是以ASCII码形式存储 , 人类能够读懂可以编辑修改的文件 。
目录文件:是文件信息的集合 , 实际上就是我们通常认识的“目录” 。
设备文件:是对计算机硬件的抽象化 , 例如 , 硬盘、鼠标、键盘被作为一个设备文件管理 。
链接文件:是指向另一个文件的链接 , 它本身没有数据 , 内部的数据来自其他文件 。链接文件区分为硬链接与软件 , 两者均用于同步数据 。
管道文件:是用于程序之间进行通信的特殊文件 。
那么要怎么区分这些文件呢?这时可以用ll命令来看打印文件的详细信息 , 每一行的第一个字段里的第一个字符代表的就是这个文件的类型 。
-:表示普通文件 。
d:表示目录 。
l:链接文件 。
b:块设备文件 。
c:字符设备文件 。
s:套接口文件 。
p:管道 。

Linux文件与目录管理 目录存放着Linux的源代码

文章插图
一、绝对路径与相对路径
在Linux中文件的路径 , 就是文件存在的地址 。如同快递寄送东西需要寄货地址 , 这个地址在Linux文件中就是它的路径 。例如:/root/mfkddd/file , file是一个文件 , 它的路径就是/root/mfkddd 。在Linux的世界中 , 路径可分为绝对路径和相对路径两种 。
绝对路径:路径的写法一定是由根目录“/”开始 。例如:cat /root/mfkddd/file , 该语句的意思是file文件里的内容 , cat后面跟的是绝对路径 。
相对路径:路径的写法不是由根目录开始的 。例如:假如进入到mfkddd目录 , 可以用cat file这个命令直接file文件里面的内容 , 这里的cat后面跟的file文件相对mfkddd而言便是相对路径 。
二、操作目录的相关命令
2.1 Linux系统中的常见特殊目录(见表1)
表1.特殊目录
符号说明
.代表当前目录
..代表上一层目录
-代表前一个工作目录
~代表当前用户的家目录
每个目录下都有两个目录:“.”和“..” , 分别代表当前目录和上层目录 。在根目录下使用ls -a命令查询 , 可以看到根目录下存在“.”和“..”两个目录 , 这两个目录的属性和权限完全一致 , 这说明根目录的“.”和“..”是同一个目录 , 如表2.2所示 。
2.2 常用操作目录的命令
2.2.1 cd:切换目录 。
[rootlocalhost ~]# cd /tmp<==切换到/tmp目录中
[rootlocalhost tmp]#<==由此可知 , 此目录为tmp
如上述操作 , cd命令是切换命令 , cd后面跟的tmp是相对路径 , cd tmp命令的意思是从当前目录切换到tmp目录 。这里使用的是tmp的相对路径 , 使用相对路径的前提是目标目录必须事先存在 。
如果只输入cd或者cd ~代表会回到使用者的家目录 。输入cd -代表回到上一个工作目录 。输入cd /root/mfkddd代表进入到mfkddd目录 , 这里cd后面跟的是绝对路径 , 所以在任何目录下输入cd /root/mfkddd这条命令都可以进入到mfkddd目录 。
2.2.2 pwd:显示当前目录的路径 。
例如 , 先在root目录下创建一个mfkddd目录 , 并在里面创建一个file文件 。
[rootlocalhost /]# cd /root<==首先进入到root目录
[rootlocalhost root]# mkdir mfkddd<==创建目录
[rootlocalhost root]# cd /root/mfkddd<==再进入到mfkddd目录
做好所有准备后 , 可以使用pwd命令来查询文件路径了 。在mfkddd目录下输入pwd命令 , 打印出来的/root/mfkddd路径是mfkddd目录的绝对路径 。
[rootlocalhost mfkddd]# pwd
/root/mfkddd
2.2.3 mkdir:建立一个新的目录 。
mkdir命令后面可以选择-m或-p参数 。-m表示可以给创建的目录设置权限 , -p表示可以创建多级目录 。
如果没有加-p参数创建多级目录 , 终端将会弹出“没有这样的文件或目录”的提示框 。因为当前目录下没有test1这个目录 , 所以找不到它 , 后面的test2和test3自然也无法被创建 。
[rootlocalhost mfkddd]# mkdir test1/test2/test3<==创建目录
mkdir: 无法创建目录"test1/test2/test3": 没有那个文件或目录<==创建失败


推荐阅读