用终端命令可快速判断链接类型:ls -l看首字符(l为软链接,-且第二列>1可能为硬链接),ls -i比对inode是否相同,file识别软链接,stat查link count≥2为硬链接、type为symbolic link则为软链接。
直接用终端命令就能快速判断,不需要打开文件或依赖第三方工具。
用 ls -l 查看文件类型和权限标识
在终端中运行:
ls -l /path/to/file
观察输出的第一列(权限字段):
- 如果以 l 开头(例如
lrwxr-xr-x),说明是软链接(symbolic link) - 如果以 - 开头(例如
-rw-r--r--),且第二列数字大于 1(如2或更高),那很可能是硬链接(但需进一步确认)
用 ls -i 比较 inode 编号
硬链接的本质是共享同一个 inode,而软链接有自己独立的 inode。执行:
ls -i /path/to/file /path/to/possible-hardlink
如果两个路径显示的数字完全相同,就是硬链接关系;不同则不是。
注意:这个方法只适用于你已有两个候选文件想比对。若只检查单个文件是否为硬链接,需配合其他线索——因为普通文件也可能有多个硬链接,但你看到的只是其中一个“名字”。
用 file 命令识别软链接
运行:
file /path/to/file
结果会明确写出:
-
/path/to/file: symbolic link to …→ 软链接 -
/path/to/file: data或类似描述(不提“symbolic link”)→ 不是软链接,可能是普通文件或硬链接
该命令对软链接识别准确、直观,但无法单独区分硬链接和普通文件。
用 stat 命令查看详细链接信息
输入:
stat /path/to/file
关注两处关键字段:
-
Link count: 表示该 inode 被多少个目录条目引用。值为
1通常是原始文件或软链接;值 ≥2说明至少存在一个硬链接(包括它自己) -
Type: 显示
symbolic link就是软链接;显示regular file则不是软链接,但可能是硬链接或普通文件
结合 Link count 和 Type,基本能确定链接类型。










