【问题标题】:How to find the view location in my linux home dir如何在我的 linux 主目录中找到视图位置
【发布时间】:2012-05-03 18:49:17
【问题描述】:

我在下面提到的不同文件夹下的 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 来完成这项工作。但这将列出一个目录中的视图。同样,我需要在所有目录中列出我的主目录中的所有视图。有没有办法搜索所有视图并列出视图

【问题讨论】:

    标签: shell clearcase clearcase-ucm cleartool


    【解决方案1】:

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

    正如“Find local copy of files in snapshot view”中所述,您无法仅从其标签中找到快照视图。
    这意味着带有一些grep 的简单cleartool lsview -l 不会只从您的主目录中选择您的视图。
    它会选择您的视图,无论您选择加载它们。

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

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

    请注意,假设您的视图直接加载到您的 HOME 下。
    如果它们的深度大于直接子目录,那么您需要对 HOME 中的所有目录递归地重复该过程。

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

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

    还可以查看“About snapshot view storage directories”:如果您的所有视图都使用相同的视图存储服务器,那么您可以通过知道其公共根共享路径来简单地推断视图存储路径。


    注意,关于查找“快照视图”根目录,this thread 提到:

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

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

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

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

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

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

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

    【讨论】:

    • 嗨,我的视图只是动态视图,不是快照。我的问题是存储在多个目录中的视图。需要搜索我的 unix home dir 中的所有视图。现在我正在使用命令 cd ~/views ViewCount=ls ~/views 来完成这项工作。但这将列出一个目录中的视图。同样,我需要在所有目录中列出我的主目录中的所有视图。有没有办法搜索所有视图和列表视图。
    • @user1206219 不,您的视图只是快照。如果它们是动态的,它们就不会在您的HOME 之下。他们的视图存储(*.vws)可能在您的HOME 下,但您的视图文件也在您的HOME(甚至~/views/...)下,那么它们就是快照视图。动态视图文件位于/view/aDynView/aVob/... 下(不是以/view 开头的绝对路径:这里没有HOME)。
    • @user1206219 我的问题是:您需要快照视图的根目录路径吗?因为如果您不这样做,cleartool lsview -l 将显示并列出 所有 个视图。
    • 我的观点是动态的。如果它们是快照,我该如何在 linux 中创建。我所有的观点都没有存储在一个目录中,这就是问题所在。在创建视图时,我很久以前就提到了视图存储路径作为许多视图的差异。你能告诉我如何搜索我在 qes 中解释的多个目录中的所有视图。谢谢。
    • @user1206219 Linux 没有什么特别的东西可以阻止您创建快照视图。见www-01.ibm.com/support/docview.wss?uid=swg21121208。如果问题是视图存储路径因视图而异,那么我提到的cleartool lsview -l 将为每个视图显示该路径。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-04
    • 1970-01-01
    • 1970-01-01
    • 2010-09-12
    • 2010-09-07
    • 1970-01-01
    相关资源
    最近更新 更多