linux连接符的使用(Linux符号链接)
linux连接符的使用(Linux符号链接)最后一个参数是 path to link,链接本身(快捷方式)。默认情况下,ln 命令创建硬链接。接下来是 path to the file (or folder),是你想要链接的文件(或文件夹)的路径(即为其创建快捷方式)。让我们看看怎么创建和删除符号链接。我们还将看到什么是断开的链接,以及如何删除它们。创建符号链接的语法如下:ln -s <path to the file/folder to be linked> <the path of the link to be created> ln 是链接命令。-s 标记表示这个链接应该是软链接。-s 也可以写成-symbolic。
符号链接(symbolic link 或 symlink)是 Linux 中一种文件类型,它指向计算机上的另一个文件或文件夹。符号链接类似于 Windows 中的快捷方式。
有人称符号链接为“软链接”,指 Linux / UNIX 系统中的一种链接,与“硬链接”相反。
软链接与硬链接的区别软链接类似于快捷方式,可以指向任何文件系统中的另一个文件或目录。
硬链接也是文件和文件夹的快捷方式,但是无法为其他文件系统中的文件夹或文件创建硬链接。
让我们看看怎么创建和删除符号链接。我们还将看到什么是断开的链接,以及如何删除它们。
如何创建符号链接创建符号链接的语法如下:
ln -s <path to the file/folder to be linked> <the path of the link to be created>
ln 是链接命令。-s 标记表示这个链接应该是软链接。-s 也可以写成-symbolic。
默认情况下,ln 命令创建硬链接。接下来是 path to the file (or folder),是你想要链接的文件(或文件夹)的路径(即为其创建快捷方式)。
最后一个参数是 path to link,链接本身(快捷方式)。
如何为文件创建符号链接——示例命令ln -s /home/james/transactions.txt trans.txt
运行此命令后,你将能够使用 trans.txt 访问 /home/james/transactions.txt。对 trans.txt 的任何修改也将反映在原始文件中。
请注意,上面的命令将在当前目录中创建链接文件 trans.txt。你也可以在以下文件夹链接中创建链接文件:
ln -s /home/james/transactions.txt my-stuffs/trans.txt
当前目录中必须已经有一个名为 “my-stuffs” 的目录——如果没有,该命令将引发错误。
如何为文件夹创建符号链接——示例命令和上面类似,我们使用:
ln -s /home/james james
这将创建一个名为“ james”的符号链接文件夹,其中将包含 /home/james 的内容。对此链接文件夹的任何更改也会影响原始文件夹。
如何移除一个符号链接在删除符号链接之前,你可能需要确认文件或文件夹是符号链接,以免损坏文件。
一种方法是:
ls -l <path-to-assumed-symlink>
在终端上运行此命令将显示文件的属性。如果结果中第一个字符是小写字母 “l”,则表示文件/文件夹是符号链接。
你还将在末尾看到一个箭头(->),指示符号链接指向的文件/文件夹。
有两种方法可以删除符号链接:
如何使用 unlink 移除符号链接使用以下语法:
unlink <path-to-symlink>
如果程序没问题,这就删除符号链接。
即使符号链接以文件夹的形式出现,也不要附加“ /”,因为 Linux 将假定它是目录,而 unlink 不能删除目录。
如何使用 rm 移除符号链接符号链接只是指向原始文件或文件夹的另一个文件或文件夹。可以通过移除链接的文件来移除这个指向关系。
rm <path-to-symlink>
例如:
rm trans.txt
rm james
请注意,尝试执行 rm james/ 会导致错误,因为 Linux 会假设 “james /” 是目录,这将需要其他选项,例如 r 和 f。但这不是我们想要的。一个符号链接可能是一个文件夹,但是我们只关心名称。
rm 优于 unlink 的主要好处是,你可以一次删除多个符号链接,就像删除文件一样。
如何找到和删除损坏的链接当符号链接指向的文件或文件夹更改路径或被删除时,链接被损坏。
例如,如果 “transactions.txt” 从 /home/james 移到 /home/james/personal,则 “trans.txt” 链接将断开。每次访问该文件的尝试都将产生错误:“无此文件或目录”。这是因为链接没有自己的内容。
发现损坏的链接时,可以轻松删除文件。查找损坏的符号链接的简单方法是:
find /home/james -xtype l
这将列出 james 目录中所有损坏的符号链接——从文件到目录再到子目录。
传递 -delete 选项将删除它们,如下所示:
find /home/james -xtype l -delete
总结
符号链接是 Linux 和 UNIX 系统中的一个有意思的功能。
你可以创建易于访问的符号链接,来引用原本不方便访问的文件或文件夹。通过一些练习,你将了解它们如何在直观的水平上工作,并且它们将使你更加有效地管理文件系统。
原文:Symlink Tutorial in Linux – How to Create and Remove a Symbolic Link,作者:Dillion Megida