如何列出特定流中的ClearCase活动?

如何列出特定流中的ClearCase活动?,clearcase,clearcase-ucm,Clearcase,Clearcase Ucm,我想知道是否有一种方法可以指定在一个命令行调用中为哪些流获取activitis列表 现在,我正在基于vob或单个流构建活动列表,使用以下任一方法: ct lsact -invob vob_name 或 但是,现在我尝试对其进行一些过滤,以从锁定/过时项目的流中删除活动。我已经有了未锁定项目中的流列表,但我不知道有什么方法可以将其传递给“ClearToolLSACT” 运行“ct lsact-invob”,然后过滤输出需要花费太长时间(从cleartool获取输出需要30秒以上),因此我希望有某

我想知道是否有一种方法可以指定在一个命令行调用中为哪些流获取activitis列表

现在,我正在基于vob或单个流构建活动列表,使用以下任一方法:

ct lsact -invob vob_name

但是,现在我尝试对其进行一些过滤,以从锁定/过时项目的流中删除活动。我已经有了未锁定项目中的流列表,但我不知道有什么方法可以将其传递给“ClearToolLSACT”

运行“ct lsact-invob”,然后过滤输出需要花费太长时间(从cleartool获取输出需要30秒以上),因此我希望有某种方法可以将流传递到ct lsact或ct descripe命令,或者其他方法,在命令中而不是之后进行过滤


有什么想法吗?

如果您正在谈论bash脚本,您可以轻松地将流列表存储在变量中:

s=$(ct lsstream -s -invob /vobs/aPVob)
然后你可以:


难道你总是不能很清楚地以你想要的形式告诉你你想要知道的东西吗

另一种方法是使用-fmt选项

ct lsact -fmt "%[stream]Xp %n\n" -inv /vobs/my_pvob
然后,您可以通过grep(-v)或其他过滤工具排除/获取感兴趣的项目。 由于不可能仅为活动流列出活动,因此另一种方法是在锁定项目/流时也锁定活动,然后将过时的活动排除在外(使用-Obsetable列出所有活动)

或者,基于VonC建议,处理活动流(无-obs开关)-无需存储列表(unix):


我实际上是在Windows窗体GUI中执行此操作的,但我想如果需要执行此操作,我可以从那里启动批处理文件。但是,这仍然需要与-invob版本相同的时间(如果不是更长的话),因为它必须处理大量的单个请求。顺便说一下,“lsact-in”应该是“lsact-in”,但它不允许我自己编辑这么小的更改!再次感谢!
while read -r line; do
    echo "... $line ..."
done <<< "$list"
cleartool lsstream -s -invob /vobs/aPVob > %TMP%\s.txt

for /F "tokens=*" %%A in (myfile.txt) do (
  cleartool lsact in stream:%%A@\aPVob
)
ct lsact -fmt "%[stream]Xp %n\n" -inv /vobs/my_pvob
for stream in $(ct lsstream "%Xn" -inv /vobs/my_pvob); do
   echo ::: ${stream}
   ct lsact -in ${stream}
done