补充说明
lndir 来自 X.Org 的构建工具(Debian 包 xutils-dev),用于在另一个目录里递归生成指向源目录的符号链接树。它最初服务于 X11 的 out-of-tree 构建:源码保持只读,编译产物写到影子目录。
用法是 lndir 源目录 [目标目录]。目标目录不存在时会创建;已存在的普通文件不会被覆盖,符号链接会被更新。-ignorelinks 让 lndir 忽略源树中已有的符号链接,-silent 关闭提示输出。
注意:lndir 只建立链接,不复制内容,因此源目录被删除或移动后影子目录即失效;它也不适合包含大量不可链接文件的场景。
语法
lndir [-ignorelinks] [-silent] [-withrevinfo] 源目录 [目标目录]
选项
-ignorelinks:不处理源目录中已有的符号链接-silent:不打印创建的链接-withrevinfo:为版本控制目录也建立链接
实例
# 在 ../build 中为当前源码树建立影子目录
lndir . ../build
# 静默模式,适合脚本
lndir -silent /usr/src/foo /tmp/foo-build
# 查看生成的链接
ls -l /tmp/foo-build | head
# 在影子目录中构建,源码目录保持干净
cd /tmp/foo-build && ./configure && make