gpt4 book ai didi

python - ClearCase 符号链接(symbolic link)未映射到 Windows 7 本身?

转载 作者:太空宇宙 更新时间:2023-11-03 18:45:15 25 4
gpt4 key购买 nike

当我使用 mklink 命令在 Windows 7 中创建符号链接(symbolic link),然后通过 Python 的 os.path.islink() 函数查询该路径名时,该函数正确返回 True。另外,当在包含我的链接的目录中调用 dir-命令时,其类型正确显示为 <SYMLINK>

使用符号 ClearCase 链接(通过cleartool ln -s ... 创建),os.path.islink() 始终返回 False,并且 Window 的 dir 命令将元素显示为普通文件(即没有 <SYMLINK>属性)。

这是一个问题,因为我正在编写一个递归地下降到目录树中的脚本(可能会或可能不会在 ClearCase 控制下),并且为了能够避免无限递归,我需要能够检测目录是实际目录还是只是另一个目录的符号链接(symbolic link)。同样,我还需要能够处理文件的符号链接(symbolic link),以避免多次处理同一文件。

还有其他人遇到过这个问题吗?顺便说一句,使用 ClearCase v7.1.2.7。

最佳答案

this technote 中所述、ClearCase 链接与 Windows mklink 不同:

C:\>mklink /D link_name Y:\<vobtag>\dir3 
symbolic link created for link_name <<===>> Y:\<vobtag>\dir3
>cd link_name
>cleartool ls
(system crash)

原因

The feature "reparse points" created the links that mklink generated. Reparse points are implemented on NTFS, but not on the MVFS itself.

When you use a snapshot view, usually NTFS file sytems stores the files. This is why mklink works error free in that situation.

When you use dynamic views, the requests go to MVFS as a target file system, although NTFS stores the view and vob. MVFS does not support reparse points and fails with an invalid parameter at creation time or a BSOD and reboot the system.

因此,对于快照或动态 View ,您的 Python 脚本最好执行 cleartool ls,并解析结果以检测 ClearCase 符号链接(symbolic link)。

关于python - ClearCase 符号链接(symbolic link)未映射到 Windows 7 本身?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19684266/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com