我一直在寻找一段时间,我无法理解为什么符号链接的md5校验和等于它指向的文件。在我的理解a symbolic link is still a file。鉴于它是空的,我期望一个符号链接有一个md5的d41d8cd98f00b204e9800998ecf8427e。 (见here)为什么符号链接的md5校验和等于原始文件
然而在实践中检验:
echo Hello World > test
ln -s test test_symlink
然后运行:
md5deep test test_symlink
产量:
e59ff97941044f85df5297e1c302d260 /tmp/test
e59ff97941044f85df5297e1c302d260 /tmp/test_symlink
有谁知道我在这里失踪?
符号链接的全部*点*可用作目标的透明*指针*,即您可以对其进行操作,就像操作目标一样(打开和读取数据,检查元数据等)。有些调用可以识别象'ls'这样的符号链接和工具。 'md5deep'工具显然没有被打扰,可能是因为没有人对此感兴趣。 –
与'cat test'和'cat test_symlink'打印相同的输出的原因相同。 – Barmar