删除文件和目录
正如我们之前介绍的, rm 命令用于删除文件和目录。 我们将用它来稍微清理一下我们的操场。 首先,让我们删除一个硬链接:
[me@linuxbox 游乐场]$ rm 乐趣无穷
[me@linuxbox 游乐场]$ ls -l
总12
drwxrwxr-x 2 我我 4096 2016-01-15 15:17 dir1
lrwxrwxrwx 1 me me 4 2016-01-16 14:45 dir1-sym -> dir1
[me@linuxbox 游乐场]$ rm 乐趣无穷
[me@linuxbox 游乐场]$ ls -l
总12
drwxrwxr-x 2 我我 4096 2016-01-15 15:17 dir1
lrwxrwxrwx 1 me me 4 2016-01-16 14:45 dir1-sym -> dir1
drwxrwxr-x | 2 | me | me | 4096 | 2016-01-15 | 15:17 | dir2 |
-rw-r--r-- | 3 | me | me | 1650 | 2016-01-10 | 16:33 | 开玩笑 |
右下角 | 1 | me | me | 3 | 2016-01-15 | 15:15 | fun-sym -> 有趣 |
这按预期工作。 文件 好玩的 消失了,链接计数显示为 开玩笑 从四个减少到三个,如目录列表的第二个字段所示。 接下来,我们将删除文件 开玩笑,只是为了享受,我们将包括“-i”选项来显示它的作用:
[me@linuxbox 游乐场]$ rm -我很有趣
rm:删除常规文件“有趣”?
[me@linuxbox 游乐场]$ rm -我很有趣
rm:删除常规文件“有趣”?
在提示符下输入“y”,文件被删除。 但是让我们看看输出 ls 现在。 注意到发生了什么事 有趣的符号? 因为它是指向一个现在不存在的文件的符号链接,所以链接是 破:
[me@linuxbox 游乐场]$ ls -l
总8
drwxrwxr-x | 2 | me | me | 4096 | 2016-01-15 | 15:17 | dir1 |
右下角 | 1 | me | me | 4 | 2016-01-16 | 14:45 | dir1-sym -> dir1 |
drwxrwxr-x | 2 | me | me | 4096 | 2016-01-15 | 15:17 | dir2 |
右下角 | 1 | me | me | 3 | 2016-01-15 | 15:15 | 有趣的符号 -> 开玩笑 |
大多数 Linux 发行版配置 ls 显示损坏的链接。 在 Fedora 机器上,断开的链接以闪烁的红色文本显示! 断开链接的存在本身并不危险,但它相当混乱。 如果我们尝试使用损坏的链接,我们将看到:
[me@linuxbox 游乐场]$ 不那么有趣的符号
fun-sym:没有那个文件或目录
[me@linuxbox 游乐场]$ 不那么有趣的符号
fun-sym:没有那个文件或目录
让我们清理一下。 我们将删除符号链接:
[me@linuxbox 游乐场]$ rm fun-sym dir1-sym
[me@linuxbox 游乐场]$ ls -l
总8
drwxrwxr-x 2 我我 4096 2016-01-15 15:17 dir1
drwxrwxr-x 2 我我 4096 2016-01-15 15:17 dir2
[me@linuxbox 游乐场]$ rm fun-sym dir1-sym
[me@linuxbox 游乐场]$ ls -l
总8
drwxrwxr-x 2 我我 4096 2016-01-15 15:17 dir1
drwxrwxr-x 2 我我 4096 2016-01-15 15:17 dir2
关于符号链接要记住的一件事是大多数文件操作是在链接的目标上执行的,而不是链接本身。 rm 是个例外。 删除链接时,删除的是链接,而不是目标。
最后,我们将移除我们的游乐场。 为此,我们将返回到我们的主目录并使用 rm 和递归选项 (-r) 来删除 Playground 及其所有内容,包括其子目录:
[me@linuxbox 游乐场]$ cd
[我@linuxbox ~]$ rm -r 游乐场
[me@linuxbox 游乐场]$ cd
[我@linuxbox ~]$ rm -r 游乐场
使用 GUI 创建符号链接
GNOME 和 KDE 中的文件管理器都提供了一种创建符号链接的简单且自动的方法。 对于 GNOME,在拖动文件时按住 Ctrl+Shift 键将创建链接而不是复制(或移动)文件。 在 KDE 中,每当删除文件时都会出现一个小菜单,提供复制、移动或链接文件的选择。