ClearCase:查找仅具有一个特定标签而不是更多标签的文件

标签 clearcase label cleartool

我想在 ClearCase 中查找标有特定标签但没有设置任何其他标签的文件。

例如,如果我有这样标记的文件:

file1 LBL_A, LBL_B
file2 LBL_A

我想要一个只提供 file2 而不是 file1 的查询。

有没有办法用cleartool find 来做到这一点?如果这不可能通过单个查询来完成,我也很乐意了解如何分几步完成此操作的任何想法(我将从 perl 脚本调用cleartool,因此可以轻松保存文件列表暂时并对其运行进一步的命令)。

提前非常感谢!

一月

最佳答案

假设 LBL_A 是您要运行的(唯一)标签

cleartool find /some/dir -version 'lbtype(LBL_A)' -print | xargs cleartool describe -fmt "%n: %l"

应该给

file1: (LBL_A, LBL_B)
file2: (LBL_A)

作为输出,您可以在 Perl 脚本中检查或通过 sed -n 's/\(.*\): (LBL_A)/\1/p' 进行过滤(假设文件名中没有冒号)。

更新:正如 VonC 正确指出的那样,对于包含空格的文件,上面的命令将失败。要处理该运行,请执行以下操作:

cleartool find ... -print | tr '\012' '\000' | xargs -0 cleartool ....

它将把换行符转换为ascii null,然后让xargs使用它作为分隔符。

关于ClearCase:查找仅具有一个特定标签而不是更多标签的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1037659/

相关文章:

c# - ASP.NET 图表值标签

linux - 命令行将多个文件合并到一个目录中?

unix - 创建目录树并在clearcase中添加文件

java - 如何在我的JavaFX应用程序中进行劳累

swift - 使用 VIPER 架构更新 View 中的标签

clearcase - 如何查找变更集中(Clearcase UCM)中未交付的文件列表?

Powershell 执行 Clearcase checkin 、 checkout 、查找命令?

tfs - 从 ClearCase 迁移到 TFS - 内存不足异常

Clearcase 相当于 hg 架子

clearcase - 在新设备上恢复 ClearCase 动态 View