RazorHail Asked: 2020-02-07 05:25:50 +0800 CST2020-02-07 05:25:50 +0800 CST 2020-02-07 05:25:50 +0800 CST 创建整个文件夹的递归硬链接 772 首先,我知道您不能创建文件夹的硬链接。 我想知道是否有任何命令(linux)可以自动(并递归地)在目的地创建后续文件夹树,然后自动将所有文件从源硬链接到目的地。 linux links 2 个回答 Voted Deltik 2020-02-07T05:33:53+08:002020-02-07T05:33:53+08:00 绑定安装会是更好的解决方案吗?它完全符合您的要求,即让所有文件在两个不同的路径上递归地相同。 此命令/other与现有挂载或目录具有相同的内容/original: mount --bind /original /other 您在其中一个中所做的任何更改/original或/other立即出现在另一个中的任何更改,因为这两条路径现在是指向同一个安装的指针。 Best Answer Kamil Maciorowski 2020-02-07T06:57:49+08:002020-02-07T06:57:49+08:00 我不确定“然后自动将所有文件从源硬链接到目标”是什么意思。你明确地想要递归。 如果您希望这两个位置保持“同步”,例如,应该同时在它们两个位置观察删除或创建文件,那么绑定安装(这个另一个答案)很好。请注意,该解决方案不会在文件系统中留下任何痕迹。如果您创建硬链接,它会在文件系统中创建。移动磁盘并将文件系统安装在另一个操作系统中,硬链接仍然存在。重新启动,硬链接仍然存在。绑定挂载在操作系统级别。移动和挂载磁盘后,您不仅需要单独命令其他操作系统绑定挂载。如果您不移动磁盘,您仍然需要告诉当前操作系统在重新启动后再次绑定挂载(如果您想要永久解决方案)。 指向目录的符号链接有点相似,它存在于文件系统中。 ln -s /original /other 如果符号链接及其目标属于同一个文件系统并且符号链接是相对的,那么即使文件系统安装在其他地方(不同的安装点,可能在不同的操作系统中),它也会起作用。符号链接可能不是您想要的(示例)是有原因的。 注意绑定挂载或符号链接并不是真正的递归。这是“链接”两条路径的单一行为。它对更深的路径没有任何作用。它们的(半)等价性出现是因为各个((((…)great-)great-)grand)父“目录”之间存在某种联系。 现在,如果“然后将所有文件从源自动硬链接到目标”,您的意思是“自动执行一次”,那么您可以使用以下命令执行此操作cp: cp -lR /original /other (-l虽然 POSIX 不需要)。就像cp -R但有硬链接。这真的是递归的。但这也是一次性行动。目录子树是分开的,只有文件是硬链接的。文件创建或删除不会被镜像。破坏硬链接的操作将破坏硬链接。
绑定安装会是更好的解决方案吗?它完全符合您的要求,即让所有文件在两个不同的路径上递归地相同。
此命令
/other
与现有挂载或目录具有相同的内容/original
:您在其中一个中所做的任何更改
/original
或/other
立即出现在另一个中的任何更改,因为这两条路径现在是指向同一个安装的指针。我不确定“然后自动将所有文件从源硬链接到目标”是什么意思。你明确地想要递归。
如果您希望这两个位置保持“同步”,例如,应该同时在它们两个位置观察删除或创建文件,那么绑定安装(这个另一个答案)很好。请注意,该解决方案不会在文件系统中留下任何痕迹。如果您创建硬链接,它会在文件系统中创建。移动磁盘并将文件系统安装在另一个操作系统中,硬链接仍然存在。重新启动,硬链接仍然存在。绑定挂载在操作系统级别。移动和挂载磁盘后,您不仅需要单独命令其他操作系统绑定挂载。如果您不移动磁盘,您仍然需要告诉当前操作系统在重新启动后再次绑定挂载(如果您想要永久解决方案)。
指向目录的符号链接有点相似,它存在于文件系统中。
如果符号链接及其目标属于同一个文件系统并且符号链接是相对的,那么即使文件系统安装在其他地方(不同的安装点,可能在不同的操作系统中),它也会起作用。符号链接可能不是您想要的(示例)是有原因的。
注意绑定挂载或符号链接并不是真正的递归。这是“链接”两条路径的单一行为。它对更深的路径没有任何作用。它们的(半)等价性出现是因为各个((((…)great-)great-)grand)父“目录”之间存在某种联系。
现在,如果“然后将所有文件从源自动硬链接到目标”,您的意思是“自动执行一次”,那么您可以使用以下命令执行此操作
cp
:(
-l
虽然 POSIX 不需要)。就像cp -R
但有硬链接。这真的是递归的。但这也是一次性行动。目录子树是分开的,只有文件是硬链接的。文件创建或删除不会被镜像。破坏硬链接的操作将破坏硬链接。