在新位置使用现有目录结构创建符号链接

Create symlink with existing directory structure in new location

我正在使用

find source -name 'Archive.folder'

输出:

source/1/Archive.folder
source/2/Archive.folder
...

在源文件夹中查找名为 Archive.folder 的所有文件夹。现在我想 link 他们到一个新的位置 /var/CommuniGate/Accounts。我怎样才能做到这一点? 我找到了以下解决方案,但它不起作用,它只是 link 源文件夹,而不是找到的文件夹。

find source -name 'Archive.folder' | xargs -0 ln -s -t /var/CommuniGate/Accounts

symlinks 应该这样创建:

/var/CommuniGate/Accounts/source/1/Archive.folder
/var/CommuniGate/Accounts/source/1/Archive.folder
...

可能是这样的:

find source -name Archive.folder -print0 |
xargs -0 -iDIR sh -c 'mkdir -p /var/CommuniGate/Accounts/$(dirname DIR); ln -s -t /var/CommuniGate/Accounts/$(dirname DIR) $PWD/DIR' 

这适用于我的简单测试用例。