2013-03-28 3 views
0

에 JAR 명령의 실패를 감지?나는 bash는이 간단한 <code>jar</code> 명령을 실행하고 배쉬

  • Manifest의 오류는 jar 명령 자체의
  • 부적절한 사용,
  • 어떤 임의의 오류, ClassNotFoundError을 같은 : 실패로 는 내가 명령이 단지 같은 이유로 인해 실행에 실패한다는 것을 의미 등

마음 당신은, 내가 클래스로 설정된 권리가 보관 또는되지 않은 경우 아는 하지 관심이 있습니다. 그래서 나는 그것이 실패라고 생각하지 않을 것입니다.

현재 모든 것이 잘 진행되었는지 검사하기 위해 자세한 옵션 만 사용하고 있습니다. 그러나, 나는 이것이 시간이 많이 걸리는 것을 알았다. 단지 jar 명령이 어떤 클래스 파일 세트를 성공적으로 보관했는지 여부를 알고 싶습니다. bash에서이 작업을 수행 할 수있는 방법이 있습니까? How to detect error if archive of jar file failed? :


내가 발견이 문제에 대한 가장 가까운 다른 자원이되었다. 그러나 배치 파일에 대한 단서가 없으며 bash 셸에서이 작업을 수행하는 데 관심이 있습니다.

if ! jar cvfm control.jar Manifest <class list> ; then 
    echo "Oops!" 
fi 

또는 명시 적으로 결과를 테스트 :

if jar cvfm control.jar Manifest <class list> ; then 
    echo "Success" 
else 
    echo "Oops!" 
fi 

당신은 다음 테스트를 반전, 장애를 감지 할 경우이 명령은 suceeded 경우 볼 수있는 가장 기본적인 방법입니다

답변

2

:

jar cvfm control.jar Manifest <class list> 
if (($?)) ; then 
    echo "Oops!" 
fi 
+0

은 if (($?)); then 조건은 가장 최근에 실행 된 명령 또는이 조건이 검사되기 전에 실행 된 명령 만 유지합니까? – vijay

+1

이전 설명을 무시하십시오. 알아 냈습니다 ... :) – vijay

+1

가장 최근의 것만. 사실'(($?))'자체가 $?를 변경합니다. 계속 유지하려면 추적 할 명령 바로 뒤에 변수에 값을 할당해야합니다 :'result = $? ' – William

관련 문제