我正在探索/bin
目录。该/bin
包含两种不同颜色的文件,根据这个答案相当于:
- 绿色表示可执行文件
- 天蓝色表示系统链接
在 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
标志的命令来创建符号链接。