FindPage
View Source:
KnowledgeBase/Scripts/clone.sh
Note:
You are viewing an old version of this page.
View the current version.
<verbatim> #!/bin/sh src="${1}" dst="${2}" if [ -z "${src}" -o -z "${dst}" ] then echo "Usage: $(basename "${0}") <source> <dest>" echo "Clones the source directory tree into destination, hardlinking all files." echo "Useful for kernel build trees, when you wanna keep everything separate." exit 64 fi if [ ! -d "${src}" ] then echo "${src} doesn't appear to be a directory." exit 32 fi if [ -e "${dst}" ] then echo "${dst} already exists. Not overwriting." exit 16 fi echo "Creating directory structure..." mkdir -p "${dst}" ( cd "${src}" && find . -type d -print0 ) | ( cd "${dst}" && xargs -0 mkdir -p ) echo "Hardlinking files..." ( cd "${src}" && find . -type f -print ) | while read file; do ln "${src}/${file}" "${dst}/${file}"; done echo "All done!" </verbatim>