背景:我写了很多关于工作、生活和爱好的各种主题的个人笔记。在我的笔记中,我经常想引用硬盘上的个人文件。我可以通过使用如下 URI 引用文件的位置来完成此操作:
file:///Users/geoffrey/Pictures/Duckroll.png
。但是,如果移动或重命名该文件,链接就会损坏。
万维网上有一个“永久链接”的概念,它是指向资源的链接,即使资源被移动或重命名,该链接也将继续有效。
例如,即使“Rickrolling”文章碰巧被重命名为“Duckrolling”或其他内容,来自维基百科的以下永久链接也保证继续工作:
https://en.wikipedia.org/w/index.php?title=Rickrolling&oldid=1246005002
我的问题是,如何为个人硬盘上的文件创建永久链接,以便如果文件被移动到其他位置,或重命名,或删除并在其他地方重新创建,则该链接仍然有效?
您可以使用符号链接并在重命名文件时更新它们,但这违背了文件位置的自动更新。
因此我建议:
为您的所有(相关)文件生成唯一的 uuid。
创建指向它们的符号链接(作为永久链接)。
最后,您可以使用 iNotify 或 FileSystemWatcher 来检测文件何时被移动或重命名(或删除),并编写一个脚本,自动将符号链接更新到新文件的位置(如果文件被删除,最终删除符号链接)。