2012-01-18 33 views
2

我经常收到这样的请求。 “查找从特定日期更改的文件列表”。如何查找以明文形式创建最新版元素的用户名?

我得到了答案,这是下面的例子

"cleartool find <Vobtag> -version "{brtype(IntegrationStream) && created_since(13-Jan.8:30)}" -print" 

给予但是很少人都在问“查找更改的文件列表以及由谁来”。这样他们就可以确定开发者名字并为他分配解决问题的任务。

是否可以管道上述命令并找到制作该版本的用户?

回答

2

您应该可以添加到您的查询查询中created_by成员。
查看query language man page

created_by (login-name) 

在所有情况下,TRUE,如果对象是由用户登录名创建(如由描述命令)。

所以您的查询看起来像:

cleartool find <Vobtag> -version "{brtype(IntegrationStream) && created_since(13-Jan.8:30) && created_by(aUser)}" -print 

的OP评论:

你给会找到某个人创建的文件列表中的命令。
但我想找到的所有文件created_since也由谁创建

真实的,你需要的格式参数添加到您的查询,继fmt_ccase man page
由于cleartool find没有-fmt参数,你要做的就是管查找查询到cleartool describe命令(可以使用-fmt指令)的结果。

cleartool find <Vobtag> -version "{brtype(IntegrationStream) && created_since(13-Jan.8:30)}" -exec "cleartool describe -fmt \"%Xn : %u\n\" \"%CLEARCASE_XPN%\" 

该命令的第二部分是:

-exec "cleartool describe -fmt \"%Xn : %u\n\" \"%CLEARCASE_XPN%\" 

的重要参数是:与所述对象的创建事件(改性剂相关联

%u 

用户/组的信息:FG,L);另见%[owner]p%[group]p

\"%CLEARCASE_XPN%\" 

它代表由find查询发现了一个版本的扩展路径。

+0

您提供的命令将查找特定人员创建的文件列表。但我想找到所有文件created_since,也是由谁创建的。 – Samselvaprabu 2012-01-18 11:41:04

+0

@Samselvaprabu:是的,我编辑了我的答案来解决你的问题。 – VonC 2012-01-18 11:49:34

+0

感谢哥们的答案。它工作正常 – Samselvaprabu 2012-01-18 11:56:48