用于删除 ClearCase 视图私有目录和文件的批处理文件

Batch file to delete ClearCase view-private directories and files

在这个论坛上搜索之后,我终于找到了下面这两个命令行,我在一个批处理文件中 运行 删除了快照视图中的 ClearCase 视图私有目录和文件。

REM First delete view-private directories
for /F "usebackq delims=" %%i in (`cleartool ls -r ^| find /V "Rule:" ^| find /V "hijacked" ^| find /V "eclipsed" ^| find /V "-->"`) do ( if exist "%%~i\" ( rmdir /S /Q "%%i" ) )

REM And then delete view-private files
for /F "usebackq delims=" %%i in (`cleartool ls -r ^| find /V "Rule:" ^| find /V "hijacked" ^| find /V "eclipsed" ^| find /V "-->"`) do ( if not exist "%%~i\" ( del /S /Q /F /A:H "%%i" ) )

但是,我时常遇到这些错误:

Could Not Find C:\Source\Folder\FileA.log
Could Not Find C:\Source\Folder\FileB.log
Could Not Find C:\Source\Folder\SubFolder\FileC.pbl

这些文件是查看私有文件,它们确实存在于提供的位置。但看起来批处理文件无法 "see" 删除它们。我做错了什么?

你为什么不使用 cleartool ls -view_only?它在这里消除了很多解析乐趣。

cleartool lsprivate -other”没有列出您想要的内容吗?

我更新了删除命令以删除开关,我的批处理文件终于能够找到视图私有文件并将其删除。

REM And then delete view-private files
for /F "usebackq delims=" %%i in (`cleartool ls -r ^| find /V "Rule:" ^| find /V "hijacked" ^| find /V "eclipsed" ^| find /V "-->"`) do ( if not exist "%%~i\" ( del "%%i" ) )