在 Unix 中复制路径

jer*_*iuh 5 linux directory filenames

我的 Unix 词汇让我失望了。我有 50 亿张图片/foo/live/images

为了开发新版本的应用程序,我想/foo/dev/images在不制作图像副本的情况下制作一条工作路径。

这是软链接吗?什么是正确的术语?创建链接的命令行语法是什么?

小智 9

非常简单,它只是一个符号链接:

ln -s /foo/live/images /foo/dev/images
Run Code Online (Sandbox Code Playgroud)

只需查看目录权限等。要查看该ln命令的手册页(所有可用选项),请在提示符下输入以下内容:

man ln
Run Code Online (Sandbox Code Playgroud)


Set*_*son 6

您可以使用符号链接或硬链接(对于单个文件),假设它们位于同一文件系统上。

cd /foo/live; find images -type d -printf "mkdir -vp '/foo/dev/%p'\n" -o -type f -printf "ln -vs '/foo/live/%p' '/foo/dev/%p'\n" | sh
Run Code Online (Sandbox Code Playgroud)

来自http://www.commandlinefu.com/commands/view/1776/create-a-symbolic-link-tree-that-shadows-a-directory-structure

是这样做还是cd /foo/dev; ln -s ../live/images .取决于您是否可以写入图像目录。