2

我在下面提到的不同文件夹下的 Linux 主目录中有很多视图。

Home 
  CCVIEWS
  views
  Development
  testproject
  :
  :
  etc.

现在我想以下面的格式列出我的 linux 目录中的所有 clearcase 视图以处理其他脚本。

user_test_Work1.vws
user_test_Work2.vws
user_dev_Work1.vws
user_newproject_Work.vws
user_cqfix.vws 

如何搜索我创建的主目录中的所有视图并在 shell 脚本中显示视图列表?

当前一次我可以显示一个文件夹视图,但我需要搜索并以上述格式显示所有视图。

我的视图只是动态视图而不是快照。我的问题是存储在多个目录中的视图。需要搜索我的 unix home dir 中的所有视图。现在我正在使用命令 cd ~/views ViewCount=ls ~/views 来完成这项工作。但这将列出一个目录中的视图。同样,我需要在所有目录中列出我的主目录中的所有视图。有没有办法搜索所有视图并列出视图

4

1 回答 1

1

如果这些视图不在 下/view,则表示存在快照视图。
(不是网络视图,因为cleartool提到了,这意味着没有 CCRC)

正如“在快照视图中查找文件的本地副本”中所述,您无法仅从其标签中找到快照视图。
这意味着一个简单cleartool lsview -l的 with somegrep不会只从您的主目录中选择您的视图。
它会选择您的视图,无论您选择加载它们。

user_cqfix.vws是一个视图工作区存储。

最简单的解决方案是转到您的每个HOME直接子目录,然后执行cleartool lsview -l -cview命令。
视图的所有者(行“ View owner:...”)和视图存储路径(行“ Global path:...”)将在cleartool命令的输出中列出。

请注意,假设您的视图直接加载到您的HOME.
如果它们比直接子目录更深入,那么您需要对HOME.

最后,如果您需要将视图存储路径 ( ) 与加载快照视图的路径相关联,这是有意义*.vws的(因为 ClearCase 无法告诉您快照视图的根目录在哪里)。

如果您不需要根目录路径,那么一个简单的 cleartool lsview -l 将列出所有视图,您可以选择所需的视图。

另请参阅“关于快照视图存储目录”:如果您的所有视图都使用相同的视图存储服务器,那么您可以通过知道其公共根共享路径来简单地推断视图存储路径。


请注意,关于查找“快照视图”根目录,该线程提到:

ClearCase 没有提供一个好的内置方法来识别快照视图的根工作目录。该信息存储在用户配置文件中。
在 Windows 上,快照视图只能被创建它们的主机上的 ClearCase 识别。这是因为工作目录信息本地存储在创建视图的机器上的用户配置文件(注册表)中。
如果您对特定用户的快照视图感兴趣,请使用以下命令查看注册表:

\HKEY_USERS\<SID>\Software\Atria\ClearCase\CurrentVersion\Workspaces 

其中<SID>是给定用户的基于文本的安全标识符。
通过适当的管理访问,也可以通过连接到远程注册表来访问此信息。通常,每台 PC 只有一个用户,要查找当前用户的快照视图目录,您只需使用:

\HKEY_CURRENT_USER\Software\Atria\ClearCase\CurrentVersion\Workspaces 

如果您将目录更改为那里列出的目录,您可以使用 ' cleartool lsview -cview' 来查找它是哪个视图。

在 UNIX 上,用户配置文件信息存储在 中~/.ccase_svreg,并且由于主目录通常是共享的(在许多客户端上自动挂载),因此快照视图在任何有权访问工作目录的 ClearCase 客户端上都是可用的(在 ClearCase 意义上)。

话虽如此,请记住您可以多次复制快照视图(只需将在view.dat快照视图的根目录中找到的隐藏文件复制到任何其他目录中,然后:快照视图现在存在于两个不同的位置!

于 2012-04-23T06:34:33.853 回答