.Windows下文件夹映射的实现(将文件夹从一个盘映射到另一个盘)
1,需求描述
(1)有时我们想让两个文件夹下的内容完全一样(这种需求在服务器上比较常见)。比如我们的文件存放在文件夹A中,但又希望通过文件夹B也能访问到。同时不管是对A文件夹里的内容做修改,还是对B文件夹里的内容做修改,另一个文件夹里的内容也会同步更新。
(2)而如果使用文件夹快捷方式的话,双击打开或在资源管理器中打开会是链接对应的文件夹。而且它毕竟还是快捷方式,如果在程序中读取时,它的后缀是 .link 而不是所链接的文件夹。
2,解决办法
要实现上面的需求,除了用同步软件来做外,还可以用 windows 的文件夹映射来实现。具体的操作命令如下:
1 |
|
/D:创建目录符号链接。默认为文件符号链接。
/H:创建硬链接,而不是符号链接。
/J:创建目录联接。
Link:指定新的符号链接名称。
Target:指定新链接引用的路径(相对或绝对)
FreeMove - 快速移动已安装软件的文件夹(把C盘软件移到其它盘下)
我们日常使用电脑时,可能图方便会直接把软件都安装在 C 盘下面。日积月累会发现 C 盘空间慢慢地快要被挤爆了。如果直接把已安装的软件目录剪切移动到其它盘下,由于注册表等问题,很多程序直接就无法运行。重装系统又很麻烦。
这里推荐一款软件:FreeMove。使用它可以安全地将已安装的应用转移到另一个磁盘。
1,软件介绍
(1)FreeMove 的原理是为文件夹创建一个软链接,之后指向到新位置,从而实现移动的功能。
(2)由于整个过程不涉及修改注册表,所以风险是零。
(3)软件下载地址:
2,使用说明
打开软件后,在"Move From”处选择我们需要移动的软件文件夹位置,再在“To”处选择目标移动位置,最后点击“Move”按钮即可。
注意:由于这个移动是通过软连接实现,那么原文件夹的位置会有个快捷方式。如果觉得这个碍眼,可以在移动时钩选上“Set original folder to hidden”,那么移动后原位置的快捷方式就会被隐藏。
Windows下多个硬盘显示为一个分区的方案
1、跨区卷
特点:
- 相当于jbod(如下图)
优点:
方便管理。
可以扩展(“带区卷”则不可扩展)。
缺点:
- 若其中一个硬盘损坏,则可能所有数据都无法读取。
其他:
- 会使用完一个硬盘所划出的空间后,再使用另块硬盘;速度没有提升。
2、带区卷
特点:
每块数据64KB;
相当于“多盘raid 0”(如下图)
优点:
- 方便管理,同时读取一处的数据时,磁盘速度比“跨区卷”快约30%
缺点:
若其中一个硬盘损坏,则可能所有数据都无法读取(更甚);
读写时会多占用一点CPU资源。
3、文件夹映射
举例一:
- 将 C 盘下的 Windows 文件夹,映射成 E 盘下
命令:
- mklink /j E:\Windows C:\Windows
举例二:
- 将 F 盘下的 “分类十” 文件夹,映射成 E 盘下
命令:
- mklink /j E:\分类十 F:\分类十
4、装载的驱动器(装入NTFS文件夹)
在Windows系统中,可以使用“符号链接”(Symbolic Link)或“硬链接”(Hard Link)来实现将多个文件夹的文件映射到一个新的文件夹的效果。
在Windows中,你可以使用命令提示符(CMD)或者PowerShell以管理员身份运行,并使用mklink
命令来创建符号链接或硬链接。具体操作如下:
使用符号链接(Symbolic Link):
打开命令提示符(CMD)或者PowerShell以管理员身份运行。
使用以下命令创建符号链接:
mklink /D "新文件夹路径" "源文件夹路径"
将"新文件夹路径"替换为你希望创建的新文件夹的路径,将"源文件夹路径"替换为你想要映射的源文件夹的路径。这将创建一个指向源文件夹的符号链接。在新文件夹中,你将可以看到源文件夹中的所有文件。
使用硬链接(Hard Link):
同样,首先打开命令提示符(CMD)或者PowerShell以管理员身份运行。
使用以下命令创建硬链接:
mklink /J "新文件夹路径" "源文件夹路径"
将"新文件夹路径"替换为你希望创建的新文件夹的路径,将"源文件夹路径"替换为你想要映射的源文件夹的路径。这将创建一个指向源文件夹的硬链接。
需要注意的是,创建符号链接或硬链接需要管理员权限。另外,对于某些特殊文件夹(如系统文件夹),可能需要使用其他技巧来创建链接。这种方法可以方便地组织和管理文件,尤其是当你需要将多个硬盘或分区的文件整合到一个统一的访问点时,非常有用