符号链接文件和可执行文件有什么区别?

符号链接文件和可执行文件有什么区别?

我正在探索/bin目录。该/bin包含两种不同颜色的文件,根据这个答案相当于:

  1. 绿色表示可执行文件
  2. 天蓝色表示系统链接

在 bash 中,我可以执行两个类别的文件,例如ping(可执行文件)和cat(符号链接)。

符号链接也应该称为可执行文件吗?它们有何不同?

答案1

符号链接是引用另一个文件的文件。如果/bin/cat您的系统上有符号链接,则运行时ls -l /bin/cat将显示类似以下内容的内容:

lrwxrwxrwx 1 root root       6 Dec 15  2018 /bin/cat -> some_other_file

当您使用符号链接文件时,内核“跟随”链接;您最终使用“真实”文件。如果“真实”文件是可执行的,那么您可以通过符号链接运行该程序(如您的cat示例所示)。

符号链接可以指向任何其他文件(普通文件、设备文件、目录、套接字、符号链接等);并且可以指向不存在的文件。

您可以使用ln带有-s标志的命令来创建符号链接。

相关内容