Setidaknya ada 2 utilitas standar untuk membangun pohon direktori bayangan dari pohon yang ada, jadi tidak perlu menulis kode di sini.
Pertama ada lndir(1)
dari xutils-dev
paket. Ini menggunakan symlink ke file. Dari halaman manual:
NAME
lndir - create a shadow directory of symbolic links to another
directory tree
SYNOPSIS
lndir [ -silent ] [ -ignorelinks ] [ -withrevinfo ] fromdir [ todir ]
Alternatif yang mungkin lebih baik adalah dengan menggunakan cp
opsi yang tepat seperti yang disarankan oleh jawaban yang diterima. Saya hanya akan memberikan beberapa detail yang lebih bermanfaat:
cp -al /src/dir /dest/dir # hard-links to leaf-files
cp -as /src/dir /dest/dir # symlinks to leaf-files
Jika Anda tidak peduli tentang mempertahankan semua atribut (kepemilikan / izin, waktu) ganti a
opsi (setara dengan -dr --preserve=all
) dengan r
(hanya rekursif):
cp -rl /src/dir /dest/dir # hard-links to leaf-files
cp -rs /src/dir /dest/dir # symlinks to leaf-files