在 Linux 中,“文件链接”通常指 硬链接(hard link) 和 软链接(symbolic link,也叫软连接)。下面按常见用法给你说明。
ln -s 源文件 链接名
示例:
ln -s /home/user/file.txt file_link.txt
file_link.txt 是指向 /home/user/file.txt 的软链接ls -l
示例输出:
file_link.txt -> /home/user/file.txt
rm file_link.txt
或
unlink file_link.txt
⚠️ 不会删除源文件
ln 源文件 链接名
示例:
ln file.txt hard_link.txt
| 对比项 | 软链接 | 硬链接 |
|---|---|---|
| 类型 | 类似快捷方式 | 文件副本(inode 相同) |
| 跨文件系统 | ✅ 支持 | ❌ 不支持 |
| 链接目录 | ✅ 支持 | ❌ 不支持 |
| 源文件删除 | ❌ 链接失效 | ✅ 数据仍存在 |
| 常用程度 | ⭐⭐⭐⭐⭐ | ⭐⭐ |
ln -s /var/www/html html
ln -sf 源文件 链接名
readlink 链接名
路径问题
ln -s file.txt link.txt # 相对路径,容易出错
ln -s /full/path/file.txt link.txt # 推荐
删除软链接 不要加 /
rm html/ # ❌ 可能删目录内容
rm html # ✅ 正确
如果你有具体场景(比如:程序路径、库文件、Nginx/Python/Java 环境),可以告诉我,我可以给你更贴近实战的示例。