该lndir
命令执行目录树的卷影复制,但使用符号链接。文件是符号链接而不是复制,而子目录是复制的。它工作得很好,但我还需要某种unlndir
执行相反操作的脚本。
换句话说, 的行为unlndir
将是:
- 如果目标树上有指向源树中文件的符号链接,请删除该符号链接。
- 对源树和目标树中存在的所有子目录递归执行先前的任务。
- 如果目标树中的某些子目录变空,请将其删除。
我意识到这类似于GNU 斯托确实如此,但我正在寻找一种更简单的基于 shell 脚本的方法。
你知道有什么 shell 脚本可以做到这一点吗?
答案1
假设 GNU find(1)
:
find -P /some/dir -type l -xtype f -delete && find -P /some/dir -type d -empty -delete