和 Windows 一样,Linux 系统的目录结构也是树形结构,不过这是一棵倒的树,树根在最上面,树枝在下面,我们可以在终端模拟器中输入 tree 命令查看当前工作目录为根节点的树形目录结构图,类似下图:
还要说明一点,Windows 系统的硬盘是每个分区单独占一个盘符,比如:C 盘、D 盘等,在 Linux 系统上有点不同,不是每个分区占一个盘符,在 Linux 上分区是挂载到某个目录上的,比如我们装系统的时候不同的分区会挂载在不同的目录,也就是说,在 Linux 系统下,只有一个根目录,那就是 / 目录
。这样就有一个很方便的特性,我们可以很方便的使用相对路径切换到不同的分区所在的目录,Windows 要切换不同分区的目录则必须使用绝对路径。
解释一下什么是相对路径,什么是绝对路径。
- 绝对路径:从文件系统树形结构的跟节点开始的目录路径是绝对路径,比如:
/home/chaojun/
/usr/bin/
- 相对路径:以当前工作目录为起点,向树形目录结构的上层或者下层延伸的目录路径是想多路径,这里特别注意两个特殊的目录(通常这两个目录是隐藏的):
-
./
代表当前目录 -
../
代表父目录,也叫上级目录 - 相对路径的例子(假定当前目录是
/home/chaojun/
):-
../../usr/bin/
:这个路径代表的目录其实就是/usr/bin/
-
./file/old/study/
:这个目录代表的路径是/home/chaojun/file/old/study/
。
-
-
1. pwd
有的时候,我们不知道自己当前目录的绝对路径是什么,我们就可以使用 pwd 这个命令来查看当前工作目录,如下图:
2. cd
cd 命令是用来切换当前工作目录的,在 Windows 系统的 powershell 中也是使用 cd 命令切换当前工作目录的。切换的时候是在 cd 命令后加一个空格,然后跟一个绝对路径或者相对路径,大家可以试试效果,每次切换完工作目录后都使用 pwd 命令检测一下是否切换成功,是否切换到了自己想要的目录。这里说几点需要注意的地方:
-
cd ../
:代表切换到上级目录 -
cd ./file/old/study/
:这里可以省略./
写成cd file/old/study/
-
cd
:直接输入 cd 命令,不跟路径,则是切换到当前用户的家目录,比如我的系统上在任意目录执行 cd 命令后,我的当前工作目录就变成了/home/chaojun/
。 -
cd -
:这个命令可以回到上一个工作目录,比如下图的过程:
3. ls
我们在切换目录的时候难免不知道当前目录下有那些目录,不知道怎么才能到达自己想要的目录,这里有两种方式知晓:
- 使用 ls 命令查看当前目录下有那些文件和目录;
- 先输入 cd 命令加上一个空格,然后连续按两次 tab 键就会列出当前目录下有那些文件和目录了。tab 键在这里起到的是补全的作用,有时我们在输入命令的时候,如果命令比较长,记不全名字,也可以只输入前面几个字母,然后连续按两下 tab 键就可以补全了,如果匹配到多个可以补全的命令,便会列出可选项供我们选择。
4. 多说几句
Linux 系统下的文件和文件夹命名可以是以 .
开头的,比如下图中,我们可以看到一些以 .
开头的文件和文件夹,它们默认都是隐藏的,使用 ls 命令不能看到它们,但可以使用 ls -a 看到它们。
还要注意的是 Linux 系统在文件命令上大小写铭感,也就是说 File 和 file 其实是两个不同的文件,而且在 Linux 系统下没有拓展名的概念,不像 Windows,可执行程序后缀通常是 .exe, Linux 系统上加后缀拓展名只是为了简单区分文件的类型,比如 Linux 写一个可执行程序的名字叫 a.out
,我们将它重命名为 a
也是可以运行的。
好了,今天的分享就到这里了,看了这篇文章,相信你可以在终端模拟器中自由的切换工作目录和查看当前工作目录下有那些文件和目录,查看当前目录的绝对路径是什么。如果你还不会,建议你再读一遍哦。
欢迎关注微信公众号:Linux 漫游之旅,新文章会在这里首发,免费提供 CSDN 下载服务。