如何使用cleartool find来获取包含特定字符串的文件?

时间:2014-06-05 14:31:03

标签: clearcase cleartool

我正在尝试搜索给定分支中的所有文件以获取特定字符串。到目前为止我已经

cleartool find . -branch 'brtype(<branch-name>)' -print

这将获取当前目录中分支名称“branch-name”的所有文件 但我希望能够搜索/ grep这些文件 你会怎么做?

1 个答案:

答案 0 :(得分:2)

您可以使用command cleartool find-exec指令来链接grep命令:

# Windows syntax 
cleartool find . -type f -branch 'brtype(MyBranch)' -exec "grep aSpecificString \"%CLEARCASE_PN%\""

# Unix syntax
cleartool find . -type f -branch 'brtype(MyBranch)' -exec 'grep aSpecificString "$CLEARCASE_PN"'

注意-type f,将搜索限制为文件(而不是目录)。

另请注意,如果分支MyBranch中有多个版本的文件,您将多次获得相同的文件。

要限制每个分支的一个文件结果,请将-branch替换为-ele(对于“元素”)
(正如我在“How to find the files modified under a clearcase branch”中说明的那样):

# Unix syntax
cleartool find . -type f -ele 'brtype(MyBranch)' -exec 'grep aSpecificString "$CLEARCASE_PN"'