使用 ClearCase 查找命令,我如何查找目录中不具有名称 pom.xml 的所有文件?
我想将其他选择选项传递给 ClearCase 查找命令,因此我不想执行另一个命令。
我正在使用 ClearCase 的 RedHat linux 版本。我试过“cleartool find!-name pom.xml -print”,但它不起作用。
PS:我不选择使用 ClearCase,它是我项目的强制要求。这是我讨厌它的原因之一。我已经多次阅读手册页,但没有明确的方法可以做到这一点!
使用 ClearCase 查找命令,我如何查找目录中不具有名称 pom.xml 的所有文件?
我想将其他选择选项传递给 ClearCase 查找命令,因此我不想执行另一个命令。
我正在使用 ClearCase 的 RedHat linux 版本。我试过“cleartool find!-name pom.xml -print”,但它不起作用。
PS:我不选择使用 ClearCase,它是我项目的强制要求。这是我讨厌它的原因之一。我已经多次阅读手册页,但没有明确的方法可以做到这一点!
ClearCase 通配符没有反转(AFAIR),但您可以为此使用 grep -
cleartool ls -short -nxname | grep -v pom.xml
还有另一种解决方案可能对您有用。尝试
您似乎忘记了cleartool find 命令的-exec选项。
它实际上允许您执行 cleartool 以外的其他命令,包括系统命令(如 sh 或 DOS 脚本)。
我知道您会“不希望执行另一个命令”,但是如果该其他系统脚本是 find 命令的 exec 选项的一部分……可以说它仍然是一个命令;)
所以创建一个简单的脚本,如:
(Unix'print.sh')
#!/bin/sh
if [ $1 != $2 ] ; then
echo $1
fi
(Windows 'print.bat')
@echo off
if not "%1"=="%2" echo "%1"
将该脚本放在您的搜索目录中,或者将脚本路径添加到您的 %PATH% 或 $PATH 环境中。
最后,使用 find 命令(以及有关日期过滤、分支过滤等的所有其他选项)
(Unix)
cleartool find . -nrec -type f -exec './print.sh $CLEARCASE_PN ./pom.xml'
(视窗)
cleartool find . -nrec -type f -exec "print.bat %CLEARCASE_PN% .\pom.xml"
在这里你去:“目录中没有名称 pom.xml 的所有文件”。
注意:find 命令的“-type f”选项允许您将搜索限制为仅文件名(而不是目录名)。