unlndir 脚本用于撤消 lndir 结果

unlndir 脚本用于撤消 lndir 结果

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

相关内容