2016-04-05 11 views
1

何かを印刷するechoコマンドを持つハイブクエリがあります。以下のコマンドを使用してhive -f sample.hql > op.txtハイブからクエリを実行した後、私はop.txtファイルに以下の出力を得るでしょうサンプルHQLファイルビーラインを使用してファイルからハイブクエリを実行しているときに行をエコーする方法

!echo 'Total records'; 
use testDB; 
select count(*) from tempTable; 

です。

Total records 
231 

私が知りたいことは、ビーラインから同じものを達成する方法です。私がコマンドbeeline -u jdbc:hive2://localhost:10000/ --silent=true -f hive.hql > op.txtを使用してbelineから同じsample.hqlファイルを実行すると失敗します。以下は私が受け取ったエラーです

Unknown command: echo 'Total records'; 

誰でもこの問題を解決する方法を知っていますか?

答えて

1

それは非常に簡単です
は、あなたのhive.hqlファイルに!sh echo "Total records";を使用して!echo 'Total records';を交換してください。それが動作します。
お楽しみください!

+0

あなたは正しいですが、Hiveバージョン0.14以降でのみ動作しますが、私が持っていたものは0.13でした。とにかくあなたの答えをありがとう。 –

+0

-eを使ってハイブコマンドを使いたいのですが?何かのように..ハイブ-e "desc tab1;!エコー\"セパレータ\ "; desc tab2"> file.out ....これは私のために働いていない – aiman

+0

この投稿は、ハイブからの質問それにもかかわらず、私はあなたが言ったような同様のクエリを実行し、私はそれが正常に実行されることができます。しかし、私はあなたの質問で '\" seperator \ "'を理解していませんでした。 'ハイブ-database alexraj_testing -e 'descサンプルに役立つ私のサンプルクエリを見てください。 !echo ============; descサンプル; '' –

関連する問題