软链接和硬链接的区别-个人笔记
程序员文章站
2022-07-05 16:59:13
...
建立软链接和硬链接的shell命令:
# 对file文件建立硬链接
ln file hard
# 对file文件建立软链接
ln -s file soft
以下为实验过程以及总结
aaa@qq.com:~/Desktop/temp$ touch file # 建立一个准备建立软链接和硬链接的文件
aaa@qq.com:~/Desktop/temp$ ln file hard # 为文件file建立一个硬链接 hard
aaa@qq.com:~/Desktop/temp$ ln -s file soft # 为文件file建立一个软链接 soft
aaa@qq.com:~/Desktop/temp$ ls -li # 查看当前目录下所有文件的类型及其他信息
total 0
667807 -rw-rw-r-- 2 fei fei 0 10月 10 21:46 file
aaa@qq.com:~/Desktop/temp$ echo "content for terminal" > hard # 根据硬链接在inode对应的内存中写入内容
aaa@qq.com:~/Desktop/temp$ cat soft # 根据软链接查看对应文件对应内存的内容
content for terminal
aaa@qq.com:~/Desktop/temp$ rm file # 删除原用于建立软 硬链接的文件
aaa@qq.com:~/Desktop/temp$ ls -li # 可以看到硬链接不改变 但是软链接失效
total 4
667807 -rw-rw-r-- 1 fei fei 21 10月 10 21:50 hard
668122 lrwxrwxrwx 1 fei fei 4 10月 10 21:47 soft -> file
aaa@qq.com:~/Desktop/temp$ cat soft
cat: soft: No such file or directory
aaa@qq.com:~/Desktop/temp$ cat hard # 硬链接不受影响 inode不变 内容也不变
content for terminal
aaa@qq.com:~/Desktop/temp$ touch file # 在对应路径下面建立相同原始同名但内容不作要求的文件
aaa@qq.com:~/Desktop/temp$ ls -li
total 4
660321 -rw-rw-r-- 1 fei fei 0 10月 10 21:56 file
667807 -rw-rw-r-- 1 fei fei 21 10月 10 21:50 hard
668122 lrwxrwxrwx 1 fei fei 4 10月 10 21:47 soft -> file
aaa@qq.com:~/Desktop/temp$ cat file # 由于file在建立的时候没有写入内容,故为空
aaa@qq.com:~/Desktop/temp$ cat soft # soft此时重新恢复链接,但是指向新的file
aaa@qq.com:~/Desktop/temp$ cat hard # hard 的inode和内容不改变
content for terminal