ClearCase中:我试图找到当前视图中所有文件的名称不特定标签。 到目前为止,我想出了以下内容:
cleartool find -cview -all -version '\!lbtype(LABEL_1)' -print
但是,这结束了与“@@ /主/ BRANCH1 /支行”并在末尾显示文件名,我真的想只是文件名。
我试着加入 - 短,但find命令不喜欢这种选择,我无法找到在手册的选项来改变行为。
ClearCase中:我试图找到当前视图中所有文件的名称不特定标签。 到目前为止,我想出了以下内容:
cleartool find -cview -all -version '\!lbtype(LABEL_1)' -print
但是,这结束了与“@@ /主/ BRANCH1 /支行”并在末尾显示文件名,我真的想只是文件名。
我试着加入 - 短,但find命令不喜欢这种选择,我无法找到在手册的选项来改变行为。
找到了:
-nxname
移除所述扩展的命名符号(默认,@@),并从每个选定对象的名称的任何后续版本ID或分支路径名。 从这种转变导致重复名称被抑制。 实际上,这个选项转换扩展名转换成标准的操作系统名称; 它也转变了分公司或版本的名称为元素的名称。
所以
cleartool find . -cview -nxn -version '\!lbtype_sub(LABEL_1)' -print
打印在当前视图和目录下的所有文件(和子目录)没有标签LABEL_1
您可以根据需要(测试两者)找到一个EXEC指令相结合:
cleartool find -cview -all -element '\!lbtype_sub(LABEL_1)' -print
cleartool find -cview -all -element '\!lbtype_sub(LABEL_1)' -exec 'cleartool descr -fmt "%En\n" "$CLEARCASE_PN"'
笔记:
-element '\!lbtype_sub(LABEL_1)'
查找所有元素 (文件),没有版本同一个标签下(因此_sub
与关联lbtype
查询) describe
命令。 "$CLEARCASE_PN"
是双引号之间的,因为它可以在其路径/文件名空间。 正如指出的OP的自己的答案 ( 卢西亚诺 ),如果你不需要看到的所有元素(包括删除的文件),但只有元素目前在视图中可见, -nxname
就够了:
cleartool find -cview -nxn -element '\!lbtype_sub(LABEL_1)' -print
我仍然使用-element
,而不是-version
,因为它是更快,避免无用的重复。