路径表示文件和目录的位置。
可以认为目录(Directory) = 文件夹(Folder)。
绝对路径是相对于一个根路径而言的路径。
在 Windows 下,以分区开始。
相对路径是相对于某个路径而言的路径。
.
表示当前目录..
表示上一级目录目录和文件之间用 /
(适用于绝大多数系统)或 \
(Windows、DOS)分隔。
如果最后为目录,则最后也可以加分隔符,以与文件区分。
下面两张图为 Windows 下的某两个目录结构。留意目录层级和选中的文件。记它们分别为例 1、例 2。
则两个文件的绝对路径如下:
Z:\code\config\jenkins\Dockerfile
Z:\code\config\jenkins\docker-dind\20.10\Dockerfile
相对于例 1 所在的目录,例 2 的相对路径是什么?
有两种写法:
docker-dind\20.10\Dockerfile
.\docker-dind\20.10\Dockerfile
反过来呢?
..\..\Dockerfile
Linux 中只有一个根目录:/
。
相对应的,一般认为 Windows 中的根目录对应的是分区的根目录,可以有多个,如 C:\
。
Windows 中的分区(GPT):
Linux 中的分区(GPT):
Linux 下分区一例:
上例中分区与目录的关系:
/home/username
:普通用户 username
的家目录/root
:root 用户的家目录~
:可以指代当前用户的家目录~username
:可以指代给定用户 username
的家目录/boot
:开机所需文件——内核、开机菜单以及所需配置文件等/usr
:unix shared resources,用户的很多应用程序和文件都放在这个目录下,类似于 Windows 下的 Program Files
目录
/usr/bin
:binaries,系统用户使用的应用程序(/bin
链接至此)/usr/sbin
:superuser binaries,超级用户(root)使用的比较高级的管理程序和系统守护程序(/sbin
链接至此)/usr/local
:用户自行安装的软件/usr/share
:帮助与说明文件,也可放置共享文件链接相当于快捷方式,但是比快捷方式功能更强大。
/etc
:配置目录etcetera
存放所有的系统管理所需要的配置文件和子目录。
/var
variable
存放着不断扩充着的东西。
我们习惯将那些经常被修改的目录放在这个目录下,包括各种日志文件。
/dev
:device,以文件形式存放任何设备与接口/proc
:process,虚拟文件系统,存放系统内核、进程、外部设备及网络状态等/run
:是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除(/var/run
链接至此)/lib
:library,存放系统最基本的动态连接共享库,类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库/lost+found
:一般情况下是空的,系统非法关机后,这里存放了一些文件/media
:Linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下/mnt
:mount,系统提供该目录是为了让用户临时挂载别的文件系统的/opt
:optional,这是给主机额外安装软件所摆放的目录/sys
:system,是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建/tmp
:temporary,用来存放一些临时文件