2017-01-11 2 views
1

HQL 파일을 실행하고 결과에 따라 작업을 수행해야합니다. HQL 파일은 테이블을 생성한다. 아래는 bash 스크립트에서 스크립트를 호출하는 방법입니다.하이브 터미널에서 hql 파일을 실행하는 방법은 무엇입니까?

if echo -e "hive -f $table_create_file -hiveconf database='$hive_db' -hiveconf table='$hive_table_name' -hiveconf query='$hive_query'" 
then 
     echo "success" 
else 
     echo "error message" 
exit 100 
fi 

그러나 이것은 HQL 파일 내의 create table 명령이 실패하더라도 성공합니다. 나는 이것이 하이브 터미널에 연결되어 있지 않기 때문에 이것이라고 생각합니다. 이 상황을 어떻게 처리 할 수 ​​있습니까? 어떤 도움이라도 대단히 감사 할 것입니다.

답변

1

실행의 상태에 따라 hive 명령이 리턴 성공/실패는 리턴 코드는 직접 내가 shell에 대한 이중 인용 모든 변수가있는 if-clause

if hive -hiveconf database="$hive_db" -hiveconf table="$hive_table_name" -hiveconf query="$hive_query" -f "$table_create_file" 
then 
     echo "success" 
else 
     echo "error message" 
     exit 100 
fi 

로에서 사용할 수있는 경우 실행시 확장하십시오.

관련 문제