Appearance
Linux 链接
Linux links
soft links
软链接,也称符号链接
定义
- 在 Linux 系统中,软链接也被称为符号链接,是一种指向不同文件的特殊文件。在 Windows 系统中,可以视为快捷方式。
- 连接是逻辑连接,不是重复连接,可以指向整个目录或链接到远程计算机上的文件
工作
举例说明
- 创建文件 xx1(原始文件),数据所在的位置
- 创建软链接 xx3,只指向 xx1 的名称,并不指向硬盘驱动器上的某个位置
- 删除原始文件,软链接将会无效
创建
bash
ls
ln -s hardlink.txt softlink.txt
# 显示 hardlink.txt softlink.txt
ls -l
# 删除原始文件
rm hardlink.txt
# 打开显示错误
cat softlink.txtls
ln -s hardlink.txt softlink.txt
# 显示 hardlink.txt softlink.txt
ls -l
# 删除原始文件
rm hardlink.txt
# 打开显示错误
cat softlink.txthard links
硬链接
定义
- 在 Linux 系统中,硬链接相当于存储在硬盘驱动器中的文件,实际引用或者指向硬盘驱动器上的某个点
- 硬链接是原始文件的镜像副本,删除原始文件不影响硬链接,但会导致软链接无法操作
工作
举例说明
- 硬盘中存在一个文件为 xx1(原始文件),打开 xx1,可以访问数据,更改硬盘驱动器上的数据,文件也会更改
- 创建一个到 xx1 文件的硬链接(新文件 xx2),打开 xx2 数据与 xx1 相同,指向硬盘驱动器上完全相同的位置
- 编辑 xx1,xx2 将自动编辑,虽然是独立的文件,但指向硬盘驱动器上完全相同的位置
- 删除原始文件 xx1,xx2 完全可行
创建
bash
ls
cat xx1.txt
ln xx1.txt hardlink.txt
# 显示创建的 xx1.txt hardlink.txt 文件
ls -l
# 删除原始文件
rm xx1.txt
# 依旧存在
lsls
cat xx1.txt
ln xx1.txt hardlink.txt
# 显示创建的 xx1.txt hardlink.txt 文件
ls -l
# 删除原始文件
rm xx1.txt
# 依旧存在
ls区别
本质上是在硬盘驱动器上引用文件的两种不同方式,硬链接指向文件本身(确切位置),软链接指向文件名(名称)
软链接是一个指向文件的指针,硬链接依然占据空间