2008-10-20 4 views
5

ClearCase find 명령을 사용하여 pom.xml이라는 이름이없는 디렉토리의 모든 파일을 찾는 방법은 무엇입니까?ClearCase find 명령에서 이름으로 파일을 제외하는 방법은 무엇입니까?

다른 명령을 실행하지 않으려면 ClearCase find 명령에 다른 선택 옵션을 전달하고 싶습니다.

ClearCase의 RedHat Linux 버전을 사용하고 있습니다. "cleartool find! -name pom.xml -print"를 시도했는데 작동하지 않습니다.

추 신 : 선택에 따라 ClearCase를 사용하지 않습니다. 프로젝트에서 반드시 준수해야합니다. 이것은 내가 그것을 싫어하는 이유 중 하나입니다. 나는 man 페이지를 여러 번 읽었고 이것을 할 명확한 방법이없는 것을 보았다!

+0

필요한 것을 수행하는 한 줄 명령이 있습니다. 아래를보십시오 – VonC

+0

돌아 왔습니다! :-) 그리고 내 대답에 '진드기'에서이 한 - 라이너는 트릭을 완료했습니다. 시원한. – VonC

답변

2

당신은 명령을 찾을 cleartool의 간부 옵션을 잊지 것 같다.

실제로 sh 또는 DOS 스크립트와 같은 시스템 명령을 포함하여 cleartool 것보다 다른 명령을 실행할 수 있습니다.

나는 당신이 "다른 명령을 실행하지 않으려는 것"이라고 알고 있지만, 다른 시스템 스크립트가 find 명령의 간부 인 옵션의 일부인 경우 ... 여전히 하나 명령입니다 주장 할 수있다)

(유닉스 'print.sh')

#!/bin/sh 
if [ $1 != $2 ] ; then 
    echo $1 
fi 

(창 'print.bat')

:

그래서 같은 간단한 스크립트를 작성

해당 스크립트를 검색 디렉토리에 두거나 % PATH % 또는 $ PATH 환경에 스크립트 경로를 추가하십시오.

그리고 마지막으로는,

(유닉스)

cleartool find . -nrec -type f -exec './print.sh $CLEARCASE_PN ./pom.xml' 

(창)

cleartool find . -nrec -type f -exec "print.bat %CLEARCASE_PN% .\pom.xml" 

(등등 날짜 필터링, 지점 필터링에 관한 모든 other options와) find 명령을 사용하여 여기에 "pom.xml이라는 이름이없는 디렉토리의 모든 파일"이 표시됩니다.

참고 : find 명령의 '-type f'옵션을 사용하면 디렉토리 이름이 아닌 파일 이름 만 검색하도록 제한 할 수 있습니다.

+0

우리가 cleartool에 대해 수천 개의 파일 (내 경우에는 수만)을 특정 파일로 평가할 때를 제외하고는 괜찮습니다. 예배 규칙서. cleartool이 특정 디렉토리를 보지 않기를 바란다. 모든 항목을 평가 한 다음 다른 명령으로 나중에 생략하면 cleartool이 모든 항목을 검색 한 후에 완료하는 데 시간이 오래 걸릴 것입니다. – searchengine27

3

의 ClearCase 와일드 카드는 반전 (AFAIR)를 가지고 있지 않지만 이것에 대한 그렙을 사용할 수 있습니다 -

cleartool ls -short -nxname | grep -v pom.xml 
+0

OP가 사용하고있는 xml 이름이라고 생각하지 않는다 ;-) – Tanktalus

3

당신을 위해 또 다른 해결책이 있습니다. 시도해보십시오.

ccapply task

관련 문제