目录与路径
绝对路径与相对路径
开始目录切换前,需要先了解所谓的【路径(PATH)】
- 绝对路径:路径的写法【一定由根目录/写起】,如:/usr/share/doc 这个目录。
- 相对路径:路径的写法【不是由/写起】,如:由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成:【cd ../man】这就是相对路径的写法。相对路径意思是指【相对于目前工作目录的路径】。
用途:
相对路径:假如我们需要在 /usr/local/packages/etc, /usr/local/packages/bin, /usr/local/packages/man 三个目录之间进行切换的时候,相对路径就非常方便了,怎么用呢?自己试试把。
绝对路径:【绝对路径的准确度要比较好】一般来说,我们在写程序(shell scripts)来管理系统的条件下,务必使用绝对路径的写法。
目录的相关操作
特殊符号:
.
代表此层目录
..
代表上一层目录
-
代表前一个工作目录
~
代表【目前使用者身份】所在的家目录
~hare
代表 hare 这个使用者的家目录
Tips:在所有的目录底下都会存在两个目录,分别是【.】与【..】分别代表此层目录和上层目录。
常见处理目录的指令
- cd(change directory,变换目录)
cd [相对路径或绝对路径]
cd ~hare
表示去到 hare 的家目录
cd ~
表示去自己的家目录
cd
也表示回自己的家目录
cd ..
表示到上一层目录,如果是在 / 目录下进行此操作,便还是在 / 目录下。
cd -
表示回到刚刚的那个目录
cd /var/spool/mail
绝对路径写法,去这个目录
cd ../postfix
相对路径的写法,表示从当前目录去到上一层目录的 postfix 目录
- Tips:利用相对路径的写法必须要确认你目前的路径才能正确的去到想要去的目录。
- Tips:在输入路径的时候,可以打出一两个字符后尽可能多的用 [Tab] 键的自动补全功能,这样会减少出错的机会。
- pwd(Print Working Directory,显示目前所在的目录)
pwd [-P]
-P(大P)表示需要显示真实路径,而不是链接路径。
- mkdir(make directory,建立新目录)
mkdir [-mp] 目录名称
-m 设定档案权限,无需在意预设权限(umask); -p 递归创建目录,看下面例子。
mkdir -m 711 test
代表创建目录 test 并且设置权限为 711
mkdir -p ./test1/test2/test3
代表一次性创建 test1、test2、test3 这3个目录,并且是2在1下面,3在2下面。
- Tips:在预设的情况下,你需要的目录得一层层的建立,加上-p 就可以一次性建立多层目录,并且,如果该目录已经存在,系统也不会提示错误信息。
- rmdir(删除【空】的目录)
rmdir [-p] 目录名称
-p 连同【上层】【空的】目录也一起删除
rmdir -p ./test1/test2/test3
这个操作是可以的,会直接删掉这三个目录(因为路径指向的是 test3,如果不加 -p 只会删掉 test3,所以上面说的【上层】是指是定目录的上层的意思,但是如果直接 rmdir test1 会报错,因为不是空的。
- 目录需要一层层的删除才行,而且被删除的目录里面必定不能存在其他的目录或档案,也就是所谓的空目录(empty directory),如果想要将所有的指定目录下的所有东西都干掉的话
rm -r test
不过,这个操作非常危险,一定要谨慎使用。
关于执行档的路径的变量:$PATH
hare
2020.3.6