在Windows 7的动态ClearCase视图中,我有一个大小为0且名称为myproject.prj.$$$
的文件。我无法打开,删除,重命名或修改该文件。我宁愿删除该文件,但在尝试删除时:
cmd.exe
的{{1}}:“功能不正确”。我在不同的位置创建了一个具有相同名称的文件,并且能够编辑和删除该文件而没有任何问题 - 所以我猜文件名不是问题。该计算机崩溃后,该文件首次出现。我不想删除并重新创建视图。
如何删除此文件?
答案 0 :(得分:2)
看起来类似于“Delete of view private file fails with error: Cannot find the specified file”:
已从.s目录中的视图存储中移动或删除了view-private文件。
视图数据库仍然知道该文件,并且与源容器不同步。
注意:发生此事件的最常见原因是病毒扫描。病毒扫描程序配置为将怀疑病毒的文件移至隔离区或配置为删除该文件。
删除并重新创建视图。
如果不能删除视图,则同步视图数据库和源容器
以下示例非常完整,但OP Martin提及in the comments:
没有必要运行命令:
mvfs日志已经多次包含丢失文件的名称 在“查看存储容器路径”中创建空文件后,可以删除视图中的文件。
文件800011174be29f22Paul.txt
的视图存储容器Paul.txt
已被删除。
M:\niewandt_view5\rn-robin>mvfsstorage Paul.txt
C:\ccstg_c\views\niewandt_view5.vws\.s\00007\800011174be29f22Paul.txt
这是预期的结果,虽然文件不再存在。
现在我们刷新mvfs缓存:
M:\niewandt_view5\rn-robin>mvfscache -f mnode
再次运行 mvfsstorage
命令:
M:\niewandt_view5\rn-robin>mvfsstorage Paul.txt
mvfsstorage: Error: Paul.txt - can't fetch cleartext
现在我们有一个问题是确定缺少哪个存储容器。
尝试打开文件会给出:
---------------------------
Editor
---------------------------
Invalid Function.
---------------------------
OK
---------------------------
如果我们尝试删除该文件,则会报告:
---------------------------
Error deleting file or folder
---------------------------
Paul can not be deleted: Invalid MS-DOS function.
---------------------------
OK
---------------------------
要查找该文件的视图存储容器路径,您需要查看 mvfs 日志。
mvfs日志显示:
{89 pid/tid 139400000cf0/883b7838eb6b63d0} cleartext lookup view=niewandt_view5 vob=\rn-robin dbid=0x80001117 - No such file or directory
{90 pid/tid 139400000cf0/883b7838eb6b63d0} cleartext pname= \Device\HarddiskVolume1\ccstg_c\views\niewandt_view5.vws\.s\00007\800011174be29f22Paul.txt
可以在视图属性“高级”选项卡上找到“\ Device \ HarddiskVolume1”位置,在ClearCase Explorer中找到“主机路径”
答案 1 :(得分:0)
我最近在Windows环境中遇到了这个问题。
*
(警告:如果可以删除本地view-private,请继续 文件已损坏,无法检索该文件的数据)
*
我的情况与上述类似,并且出现以下错误-
1. Windows Explorer shows the error message “Invalid MS-DOS function”.
2. cmd.exe’s del: “Incorrect function”.
我通过在命令提示符下键入mvfslog
找到了mvfs日志路径,它将输出以下详细信息
Log priority: error
irpops mask: 0x00000000
vops mask: 0x00000000
vfsops mask: 0x00000000
xops mask: 0x00000000
traps mask: 0x00000000
Kernel logfile: "C:\mvfslogs\20191205.log"
现在从路径上方打开日志文件
"C:\mvfslogs\20191205.log"
因此,如果您最近使用的功能不正确,那么那将是上面的日志文件中记录为错误的最后一个数据。
打开日志文件并观察文件末尾,它读取类似于下面的内容-
line #(last-1) - mvfs: Error: ....da..da..da...da... - No such file or directory
line #(last) - mvfs: Error: ....da...da...da...da... \your_container_location\..da..\..da..\..da..your_view_name.vws\.s\00037\800001765bf06476cc3080a
因此路径(800001765bf06476cc3080a)
中的最后一个词是您在your_container_location中的文件的实际文件引用。 (有时可能显示为800001765bf06476cc3080ayour_file_name.extension)。
所以现在发生了什么事
它正在寻找您的文件参考800001765bf06476cc3080a your_container_location路径 (\ your_container_location..da .... da .... da..your_view_name.vws.s \ 00037) 但未找到(因为您的本地计算机之间的数据未同步 视图和your_container_location)。
所以现在只需要
Step 1-to create a file named as 800001765bf06476cc3080a (as per your file name) in \your_container_location\..da..\..da..\..da..your_view_name.vws\.s\00037
Step 2-refresh your local view.
Step 3-Delete the file.
现在,该文件应该能够永久删除。而且您可以重复使用视图。