Có ít nhất 2 tiện ích tiêu chuẩn để xây dựng cây thư mục bóng của cây hiện có, vì vậy không cần phải viết mã ở đây.
Đầu tiên là lndir(1)
từ xutils-dev
gói. Nó sử dụng symlink đến tập tin. Từ trang người đàn ông:
NAME
lndir - create a shadow directory of symbolic links to another
directory tree
SYNOPSIS
lndir [ -silent ] [ -ignorelinks ] [ -withrevinfo ] fromdir [ todir ]
Một sự thay thế có lẽ tốt hơn là chỉ cần sử dụng cp
với các tùy chọn đúng như câu trả lời được chấp nhận cho thấy. Tôi sẽ chỉ cung cấp thêm một số chi tiết hữu ích hy vọng:
cp -al /src/dir /dest/dir # hard-links to leaf-files
cp -as /src/dir /dest/dir # symlinks to leaf-files
Nếu bạn không quan tâm đến việc giữ tất cả các thuộc tính (quyền sở hữu / quyền, thời gian) thay thế a
tùy chọn (tương đương -dr --preserve=all
) bằng r
(chỉ đệ quy):
cp -rl /src/dir /dest/dir # hard-links to leaf-files
cp -rs /src/dir /dest/dir # symlinks to leaf-files