相对于 NTFS 重新分析点(符号链接/目录联结)的路径规范化
本文关键字:联结 规范化 路径 符号链接 NTFS 相对于 | 更新日期: 2023-09-27 18:33:54
不幸的是,我在Windows上,我需要POSIX realpath
。
假设 CMD 批处理脚本中有一个目录路径变量:
FOODIR=D:/tmp/foo/bar/quux
其中 dirpath 的一个或多个中间组件是符号链接(Microsoft 术语中的目录联结):
[/cygdrive/d/tmp]$ cmd /C dir /Ad /l
...
Directory of D:'tmp
...
2014-12-10 16:44 <SYMLINKD> foo [D:'storage'foo.canonical]
如何编写一个将%FOODIR%
转换为D:/storage/foo.canonical/bar/quux
的函数?
欢迎任何解决方案。
GetFinalPathNameByHandle为我工作。
或者,使用 Powershell 5+,您可以遍历路径并解析每个文件夹。检查.LinkType in ('Junction', 'SymbolicLink')
并使用具有可选分辨率的.Target[0]
的相对符号链接。