Кажется, вы забыли параметр -exec команды cleartool find.
На самом деле он позволяет вам выполнять другие команды, кроме cleartool, в том числе системные (например, скрипт sh или DOS).
Я знаю, что вы бы "предпочли не выполнять другую команду", но если этот другой системный скрипт является частью опции exec команды find ... можно утверждать, что это все еще одна команда ;)
Итак, создайте простой скрипт, подобный:
(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».
Примечание: опция '-type f' команды find позволяет ограничить поиск только именами файлов (не именами каталогов).