如何在 Linux 中创建符号链接

符号链接或符号链接是最重要的 Linux 功能之一,尤其是对于有抱负的 Linux 系统管理员而言。顾名思义,符号链接允许用户将一个文件指向另一个文件,而无需镜像其数据,本质上为您提供了多个位置来访问同一文件。因此,在本指南中,我们将了解如何在 Linux 中创建符号链接。

符号链接通常称为软链接,它与 Linux 中的另一种链接类型——硬链接不同。硬链接和软链接之间的区别在于,文件的硬链接将能够访问原始文件的内容,并且如果要删除原始文件,将保留其内容。而软/符号链接就像 Windows 中的快捷方式,它指向原始文件,但一旦它指向的文件被删除,它就变得毫无用处。

在 Linux 中创建符号链接很简单。您需要做的就是使用“ln”命令和“-s”标识符来告诉您的 Linux 系统您正在尝试创建符号链接。这里,“ln”是 Link 的缩写,该命令用于创建符号链接。它通常与后跟两个文件名或路径的标识符结合使用。Linux 中 ln 命令的语法如下:

ln -identifier /path/to/the/file file

以下是如何使用 ln 命令在 Linux 中创建符号链接:

1. 启动终端并确保您与要链接的文件位于同一目录中。

终端中的 ls 命令

2. 在终端中键入以下命令。确保使用“-s”标识符,后跟文件名和新名称。这里“1”是实际文件,1-1 是符号链接文件的名称。

ln -s 1.txt 1-1.txt
符号链接创建命令

3. 同样,您还可以为目录创建符号链接,并使用 ln 命令将它们链接到特定文件夹。在下面的示例中,我们首先提到要链接的目录 (/home/abubakar),然后提到要链接到的文件夹,这里是文件夹 1。

ln -s /home/abubakar folder1
创建目录的链接

如果您想覆盖符号链接以将其替换为您链接到的文件的新版本,您可以使用“-f”强制参数轻松完成此操作。Linux 不允许您通过仅传递相同的文件名来覆盖现有的符号链接,而是需要使用 -f 参数。这是覆盖符号链接的语法:

ln -sf file_name1 file_name2

现在,让我们通过示例了解如何在 Linux 中覆盖符号链接。下面,我们使用 ln 命令用 2.txt 覆盖 1.txt:

ln -sf 1.txt 2.txt

## Returns ln: failed to create symbolic link '2.txt': File exists

ln -sf 1.txt 2.txt ## Works!
覆盖符号链接

就像从 Windows 访问 Linux 文件并创建符号链接一样,删除它们也非常容易。以下是具体操作方法。

1. 对于文件,您可以继续删除符号链接以断开链接。您可以通过在保存符号链接的目录中 使用Linux 的 rm 命令来完成此操作。

rm "symlink"
删除符号链接

2. 对于文件夹,您可以再次使用“rm -rf”命令删除链接。

rm -rf "folder"

3. 下面介绍如何使用 unlink 命令取消文件夹与其符号链接的链接。

unlink /path/to/the/link

从“覆盖符号链接示例”中,如果我删除文件“1.txt”,它将创建一个损坏的符号链接“2.txt”。

rm 1.txt

现在,要在 Linux 中找到这个损坏的符号链接,请使用以下命令。如果您与损坏的符号链接位于同一目录中,则无需提及路径。只需使用以下命令语法:

find /home/directory_name -xtype l

最后,执行以下命令以删除损坏的符号链接:

find /home/directory_name -xtype l -delete
删除 Linux 中损坏的符号链接

类似文章

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注