我有一个简单的场景,但我现在不知道是否有办法Windows
做到这一点:
我们有 2 个包含以下文件的目录:
书:
D:\sources\Books
|___ A.pdf
|___ B.pdf
库:
E:\extra\text\science\Lib
|___ X.pdf
|___ Y.pdf
注意:目录.pdf在里面自由文件夹
现在,我想要:
- 重定向每一个开放请求
D:\sources\Books\X.pdf
即将E:\extra\text\science\Lib\X.pdf
- 解决方案不应该导致用户通过 打开文件夹时
X.pdf
显示在文件夹中(应通过或或 软件命令打开)Book
Book
windows explorer
typing the path in windows explorer address bar
CMD
问题说明:
- 您的解决方案适用于哪个 Windows 版本?
- 有没有适合 Windows的方法
XP
?7
8
NTFS
您的解决方案中是否需要?
答案1
以下将在 D:~\Books 中创建一个指向 E:~\Lib 的符号链接,然后设置隐藏属性 (+H),/L 开关确保仅在符号链接上设置该属性。仅当用户手动设置了隐藏文件的可见性时,链接才会在 Windows 中可见:
MKLINK D:\sources\Books\X.pdf E:\extra\text\science\lib\X.pdf | ATTRIB +H D:\sources\Books\X.pdf /L
MKLINK
来源:和 的Windows 命令行帮助 ATTRIB
。
符号链接仅适用于 Windows 中的 NTFS。如果其中一个或两个文件系统都是 FAT32,则必须使用快捷方式。无法从命令行轻松创建快捷方式,因此只需right click
->“新建”->“快捷方式”-> 输入E:\extra\text\science\lib\X.pdf
->“下一步”-> 输入X.pdf
->“完成”->“右键单击快捷方式”->“属性”->“常规”选项卡 -> 选中“隐藏”。除非用户手动选择了隐藏文件的可见性,否则这也不会可见。
主要区别在于符号链接是在文件系统级别创建的,通常会被视为文件本身,而快捷方式是运行脚本的单独文件,实际上全名为“X.pdf.lnk”。除非您尝试使用脚本操作文件,否则这对于您的目的来说无关紧要。
注意:除非用户键入DIR /A
显示隐藏文件,否则符号链接和快捷方式在终端上都是不可见的;但是,它们可以工作。如有必要,您可以使用 (GUI) regedit.exe 或使用 的命令行禁用用户从 Windows 资源管理器查看隐藏文件的能力REG
。查看REG /?
并查看这篇文章:http://www.askvg.com/the-best-method-to-hide-files-folders-in-windows-without-using-3rd-party-utilities/以及随附的文章:http://www.askvg.com/all-kinds-of-restrictions-for-windows-2000-xp-2003-and-vista/,特别是第 4 项。当然,这样做的问题是,用户可能某一天确实有查看隐藏文件的正当需求。