我尝试实现一些我想象得非常简单但最终比预期更难的事情。擦除文件后保持硬链接连接
我有一个文件夹:source/
。我有第二个:target/
。我在我的第一个文件夹中创建一个文件test.jar
。然后,我想让这个文件出现并且可以在我的第二个文件夹中执行。我看到3个选项:
手动复制/粘贴我的文件。它的作品,但...我不想每次更新我的文件时都这样做。
符号链接。它的工作原理,但如果我执行jar文件,上下文是
source/
而不是target/
就像我想。硬链接。这正是我需要的,但问题是
test.jar
未被修改,但生成。这意味着擦除后source/test.jar
,target.test.jar
仍然引用旧文件...是否有可能强制2个文件始终具有相同的值?
感谢您的帮助!
编辑:现在,我解决了这个问题,通过添加一行来将文件从source /目标/复制到脚本中,我将在生成jar之后执行它。我认为我想要做的事实际上是不可能的。它需要一种新的链接,链接2个文件的内容,给出它们的路径名,而不是它们的索引节点...
根据您的环境,您可以设置一个构建任务,为您复制(生成?)'.jar'。它会增加可移植性,因为Windows不支持像Unix那样的符号链接。 – 2014-10-17 10:55:53
>>“我不想每次更新我的文件时都这样做。”检查['inotifywait'](http://man.cx/inotifywait)或['rsync'](http://man.cx/rsync)是否可以帮助你。 – anishsane 2014-10-17 11:18:15
我检查了inotifywait和rsync。我很抱歉,我不明白我应该如何使用它来解决我的问题。我认为@rr的评论为我的案例提供了最好的方法。我正在使用Maven2。我会尝试,但我不知道如何实现这一点。我会做一些研究并回来。 – Sharcoux 2014-10-18 18:51:26